Javascript &引用;未捕获引用错误“;使用SoundCloudAPI时

Javascript &引用;未捕获引用错误“;使用SoundCloudAPI时,javascript,soundcloud,Javascript,Soundcloud,我正在尝试使用Javascript在Soundcloud上使用该站点的API搜索曲目。我创建了一个页面test.html,其中包含以下代码(已删除客户端ID): 我定义findMusicByTag()的方式有什么问题?您应该将标记分成两部分: <script type="text/javascript" src="http://connect.soundcloud.com/sdk.js"></script> <script type="text/javascript

我正在尝试使用Javascript在Soundcloud上使用该站点的API搜索曲目。我创建了一个页面
test.html
,其中包含以下代码(已删除客户端ID):


我定义
findMusicByTag()
的方式有什么问题?

您应该将
标记分成两部分:

<script type="text/javascript" src="http://connect.soundcloud.com/sdk.js"></script>
<script type="text/javascript">
function findMusicByTag(tag)
{
    SC.initialize({
        client_id: 'MY_CLIENT_ID'
    });
    SC.get('/tracks',{tags:tag},
        function(tracks)
        {
            console.log(tracks);
    });
}
</script>

函数findMusicByTag(标记)
{
SC.initialize({
客户id:“我的客户id”
});
SC.get('/tracks',{tags:tag},
功能(轨道)
{
控制台日志(轨道);
});
}
如所述:

src

此属性指定外部脚本的URI;这可以作为直接在脚本中嵌入脚本的替代方法 文件
script
具有指定的
src
属性的元素不应 将脚本嵌入其标记中


编辑:删除了
{tags:tag}
周围的后斜杠和双引号。您应该将
标记分成两部分:

<script type="text/javascript" src="http://connect.soundcloud.com/sdk.js"></script>
<script type="text/javascript">
function findMusicByTag(tag)
{
    SC.initialize({
        client_id: 'MY_CLIENT_ID'
    });
    SC.get('/tracks',{tags:tag},
        function(tracks)
        {
            console.log(tracks);
    });
}
</script>

函数findMusicByTag(标记)
{
SC.initialize({
客户id:“我的客户id”
});
SC.get('/tracks',{tags:tag},
功能(轨道)
{
控制台日志(轨道);
});
}
如所述:

src

此属性指定外部脚本的URI;这可以作为直接在脚本中嵌入脚本的替代方法 文件
script
具有指定的
src
属性的元素不应 将脚本嵌入其标记中


编辑:删除了
{tags:tag}

除了分隔脚本标记外,还需要删除/“around”标记

<html>
<head>
<script src="http://connect.soundcloud.com/sdk.js">
</script>
<script type="text/javascript">
function findMusicByTag(tag)
{
SC.initialize({
    client_id: 'your id'
});
SC.get('/tracks',{tags: tag},
    function(tracks)
    {
        console.log(tracks);
    });
}
</script>
</head>
<body onload="findMusicByTag('hitech')">
</body>
</html> 

函数findMusicByTag(标记)
{
SC.initialize({
客户id:“您的id”
});
SC.get('/tracks',{tags:tag},
功能(轨道)
{
控制台日志(轨道);
});
}

除了分离脚本标记外,还需要删除/“around标记

<html>
<head>
<script src="http://connect.soundcloud.com/sdk.js">
</script>
<script type="text/javascript">
function findMusicByTag(tag)
{
SC.initialize({
    client_id: 'your id'
});
SC.get('/tracks',{tags: tag},
    function(tracks)
    {
        console.log(tracks);
    });
}
</script>
</head>
<body onload="findMusicByTag('hitech')">
</body>
</html> 

函数findMusicByTag(标记)
{
SC.initialize({
客户id:“您的id”
});
SC.get('/tracks',{tags:tag},
功能(轨道)
{
控制台日志(轨道);
});
}

哪一行是第17行?将您的
分为两行:一行用于
src
,一行用于脚本。@AlexMarchant,第17行是
调用。哪一行是第17行?将
分为两行:一行用于
src
,一行用于脚本。@AlexMarchant,第17行是
调用。我删除了转义引号,但也犯了同样的错误。也分离了脚本标记。我删除了转义引号,但得到了相同的错误。也分隔了脚本标记。我将脚本标记块分隔为两个
块,但得到了相同的错误。@sigil是否注意到其他错误?整个函数定义看起来不错,所以如果它一直说函数未定义,那么可能是因为有其他错误阻止了JS进一步解析。好了,现在它可以工作了。删除引号后,我可能会遇到相同的错误,因为我仍在加载页面的原始未更改副本。我将脚本标记块分为两个
块,但得到了相同的错误。@sigil是否注意到其他错误?整个函数定义看起来不错,所以如果它一直说函数未定义,那么可能是因为有其他错误阻止了JS进一步解析。好了,现在它可以工作了。我想我在删除引号后也会遇到同样的错误,因为我仍然在加载页面的原始未更改副本。