代码适用于JsFiddle,但不适用于网站

时间:2012-08-08 17:54:31

标签: jquery json jsfiddle

我无法获取在jsFiddle中运行的代码在我的网站上运行。

http://jsfiddle.net/tris_wood/qCqcK/

我已根据此处的用户对相同问题进行了调整,但仍然无法运行。

这是我的页面页面结构

<head>
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="custom.js"></script>
</head>

<div data-role="page">
<ul data-role="listview" id="results"></ul>
</div>

custom.js

$(document).ready(function() {
$.ajax({
    url: "http://itunes.apple.com/lookup?id=300261471&entity=song",
    dataType: 'jsonp',
    success: function(json_results) {
        console.log(json_results);

        $('#results').append('<ul></ul>');
        listItems = $('#results').find('ul');

        $.each(json_results.results, function(key) {

            // edit
            var data = json_results.results[key],
                artworkUrl60 = data.artworkUrl60 || '',
                collectionViewUrl = data.collectionViewUrl || '',
                collectionName = data.collectionName || '',
                artistName = data.artistName || '',
                trackName = data.trackName || '',

html = '<img src="' + artworkUrl60 + '"/>';
html += '<h3>' + collectionName + '</h3>';
html += '<p>' + artistName + '</p>';
html += '<p>' + trackName + '</p>';
listItems.append('<li><a href="' + collectionViewUrl + '">' + html + '</a>
</li>');
        });

        // Need to refresh list after AJAX call
        $("#results").listview("refresh");
    }
});
});​

Firebug告诉我Uncaught SyntaxError:第32行的意外标记ILLEGAL。

以下是完成页面http://ipwtclothing.net/test.html

的网址

已经在这几天了,所以任何帮助将不胜感激。感谢。

1 个答案:

答案 0 :(得分:2)

错误似乎来自驻留在文件末尾的无关字符。如果删除该字符,则该文件可以正常工作。

我尝试在本地保存您的网页并离线打开。我遇到了同样的问题。然后我可以在js的最后一行识别出一个无效字符。

           // Need to refresh list after AJAX call
            $("#results").listview("refresh");
        }
    });
});<200b>

以上是我在vim编辑器中看到的内容。删除最后一个特殊字符,这将解决您的问题。