Javascript 获取请求后无法执行函数-SoundCloud API
这是一个奇怪的问题,可能有一个明显的解决办法。我只是试图在单击“新建曲目”按钮时向浏览器发送警报。但是,按下按钮后,发送请求并收到有效响应,什么也没有发生。不管get函数中放了什么,似乎都不会发生任何事情。如果不是很明显,我对JS还很陌生,那么如果有人能解释一下为什么这不起作用,那就太好了 编辑:API_键只是一个占位符Javascript 获取请求后无法执行函数-SoundCloud API,javascript,soundcloud,Javascript,Soundcloud,这是一个奇怪的问题,可能有一个明显的解决办法。我只是试图在单击“新建曲目”按钮时向浏览器发送警报。但是,按下按钮后,发送请求并收到有效响应,什么也没有发生。不管get函数中放了什么,似乎都不会发生任何事情。如果不是很明显,我对JS还很陌生,那么如果有人能解释一下为什么这不起作用,那就太好了 编辑:API_键只是一个占位符 <!DOCTYPE html> <html> <head> <style type="text/css">
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
html, body, #map-canvas { height: 100%; margin: 0; padding: 0; }
</style>
<script src="http://connect.soundcloud.com/sdk.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=API_KEY"></script>
<script>
SC.initialize({
client_id: "API_KEY"
});
function newTrack(){
SC.get("/tracks", {limit: 1}, function(tracks){
alert("Latest track: " + tracks[0].title);
});
};
</script>
</head>
<body>
<input type="button" value="new track" onclick="newTrack()"/>
<div id="track"></div>
</body>
</html>
部分原因可能是您在get调用的回调上没有从SoundClound获取任何曲目,并且您正在尝试访问null的[0]索引,这是一个错误。。试试这个
SC.get("/tracks", {limit: 1}, function(tracks){
if(tracks && tracks.length > 0)
alert("Latest track: " + tracks[0].title);
else
alert('There are no tracks')
});
当您单击“新建曲目”按钮时,浏览器控制台上是否有任何错误?没有错误,只是请求者的响应仍然不起作用。奇怪的是,即使我只是把alerthello world放进去,它仍然不会执行。它好像完全忽略了我作为回调函数所做的任何事情。它对我来说很有用。请在另一个选项卡中尝试,可能是您单击了“阻止此页面创建其他对话框”以抑制警报方法。真的吗?您运行它的设置是什么?它是Chrome,urs?Chrome也是:/因此,为了确保您尝试了这段代码,当您单击“获取轨迹”按钮时,它成功地向您发出警报?因为这快把我逼疯了。