为什么赢了';我的HTML文件找不到我的javascript文件?
我有一个简单的HTML文件,我正试图链接到一个javascript文件。两者都在C:\Users\Me\Test中 (所以有C:\Users\Me\Test\Test.html和C:\Users\Me\Test\Test.js) HTML:为什么赢了';我的HTML文件找不到我的javascript文件?,javascript,html,Javascript,Html,我有一个简单的HTML文件,我正试图链接到一个javascript文件。两者都在C:\Users\Me\Test中 (所以有C:\Users\Me\Test\Test.html和C:\Users\Me\Test\Test.js) HTML: SoundCloudAPI 和Javascript: function playSomeSound(genre){ SC.get('/tracks', { genres: genre, bpm: {
SoundCloudAPI
和Javascript:
function playSomeSound(genre){
SC.get('/tracks', {
genres: genre,
bpm: {
from: 100
}
}, function(tracks){
var random = Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri, {auto_play: true}, document.getElementById('target'));
});
}
window.onload = function(){
SC.initialize({
client_id: '*******'
});
var menuLinks = document.getElementsByClassName('genre');
for (var i = 0; i < menuLinks.length; i++){
var menuLink = menuLinks[i];
menuLink.onclick = function(e){
e.preventDefault();
playSomeSound(menuLink.innerHTML);
};
}
};
函数播放声音(体裁){
SC.get(“/tracks”{
类型:类型,
bpm:{
起:100
}
},功能(轨道){
var random=Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri,{auto_play:true},document.getElementById('target');
});
}
window.onload=函数(){
SC.initialize({
客户id:“********”
});
var menuLinks=document.getElementsByClassName('genre');
对于(变量i=0;i
(请注意,客户端ID实际上是代码中正确的ID。)
HTML正确地显示了这三个链接,但是当我单击它们时什么也没有发生。我错过什么了吗
不管它值多少钱,我都在学习教程。谢谢你的任何想法/建议
编辑:注意,当HTML页面加载时,我可以查看源代码,然后单击“test.js”,它确实加载了Javascript源代码……因此它正确地看到了Javascript,这让我觉得Javascript本身有问题
编辑2:
我能够获得我正在使用的编辑器(SublimiteText 2)来构建javascript,并得到以下错误:
功能(轨道){
SyntaxError:意外标记(
这意味着它不需要“(”在“函数”之后“?…这可能有帮助吗
编辑3:
好的,我一直在四处搜索,通过在BPM周围添加{}得到了一个不同的错误:
function playSomeSound(genre){
SC.get('/tracks', {genres: genre}, {bpm: { from: 100 }},
function(tracks){
var random = Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri, {auto_play: true}, document.getElementById('target'));
});
console.log(genre);
}
window.onload = function(){
SC.initialize({
client_id: "6e6078f1408f62443f757b4c34d55e12"
});
var menuLinks = document.getElementsByClassName('genre');
for (var i = 0; i < menuLinks.length; i++){
var menuLink = menuLinks[i];
menuLink.onclick = function(e){
e.preventDefault();
playSomeSound(menuLink.innerHTML);
};
}
};
函数播放声音(体裁){
SC.get('/tracks',{genres:genre},{bpm:{from:100},
功能(轨道){
var random=Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri,{auto_play:true},document.getElementById('target');
});
console.log(体裁);
}
window.onload=函数(){
SC.initialize({
客户id:“6e6078f1408f62443f757b4c34d55e12”
});
var menuLinks=document.getElementsByClassName('genre');
对于(变量i=0;i
现在,我得到一个错误:
window.onload=函数(){
ReferenceError:未定义窗口
事实上,问题并非来自您。javascript文件已正确加载(请尝试添加以下代码:
function playSomeSound(genre){
SC.get('/tracks', {
genres: genre,
bpm: {
from: 100
}
}, function(tracks){
var random = Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri, {auto_play: true}, document.getElementById('target'));
});
}
window.onload = function(){
SC.initialize({
client_id: '*******'
});
alert("Hello! I am an alert box!!");
var menuLinks = document.getElementsByClassName('genre');
for (var i = 0; i < menuLinks.length; i++){
var menuLink = menuLinks[i];
menuLink.onclick = function(e){
e.preventDefault();
playSomeSound(menuLink.innerHTML);
};
}
};
函数播放声音(体裁){
SC.get(“/tracks”{
类型:类型,
bpm:{
起:100
}
},功能(轨道){
var random=Math.floor(Math.random()*49);
SC.oEmbed(tracks[random].uri,{auto_play:true},document.getElementById('target');
});
}
window.onload=函数(){
SC.initialize({
客户id:“********”
});
警报(“你好!我是一个警报框!!”);
var menuLinks=document.getElementsByClassName('genre');
对于(变量i=0;i
在javascript文件中
以及html:
<html>
<head>
<title>SoundCloud API</title>
<script src="http://connect.soundcloud.com/sdk.js"></script>
<script src="test.js"></script>
</head>
<body>
<ul>
<li><a href="#" class="genre">EDM</a></li>
<li><a href="#" class="genre">classical</a></li>
<li><a href="#" class="genre">soundtrack</a></li>
</ul>
<div id="target"></div>
</body>
</html>
SoundCloudAPI
本教程制作于2012年(很久以前),可能脚本已经过时或类似的东西。您应该在正文的最后,即
标记之前加载所有JavaScript文件。这将使JavaScript运行更加可预测和可靠,并且可能是问题的原因。很少有情况下您希望JavaScript被校准led指示灯位于其他任何位置。JavaScript控制台中是否有错误消息?@Derek朕會功夫 基本上,如果他只是把它当作test.js。他显然是从根托管所有东西。有点道理。你可以“调试”它。你从来没有回答过关于控制台中是否有错误的问题。有吗?你知道如何查看控制台吗?然后在窗口的第一行上放置一个断点。onload
函数。等等。在浏览器中按F12。在浏览器中运行窗口时是否出现未定义的错误?这会导致非常奇怪。我已经检查了你的代码,没有可见的语法错误。请在浏览器中运行你的代码,而不是在某些ST环境中运行(不知道如何工作)。打开devtools并查看控制台。可能您会在SC.initialize
中看到错误或其他一些运行时错误。如果没有更多信息或上下文,这是不可能的。您好,我尝试了(将警报放在关闭}下);但什么也没有发生……添加了“调试”警报,这对我来说很好。还要确保它们在同一个目录中。我将Javascript更改为您拥有的,并启动了警报框!但是,Soundcloud的东西仍然不起作用…嗯。如果您想使用Soundcloud sdk,您需要一个客户端id。这里有一个链接,您可以注册:如果您有问题,也不要忘记接受答案解决了。我有一个客户ID,为了这个,我用“****”替换了它。(可以共享客户ID吗?我想不可以,这就是为什么我用星号…。我用一个客户ID正确地解决了这个问题…:/I我将两行更改为正确的,它没有改变任何东西…@Goose它会以什么方式出现“可能是这里问题的原因”?如果这是一个诊断问题或想法,应该是一个命令
<html>
<head>
<title>SoundCloud API</title>
<script src="http://connect.soundcloud.com/sdk.js"></script>
<script src="test.js"></script>
</head>
<body>
<ul>
<li><a href="#" class="genre">EDM</a></li>
<li><a href="#" class="genre">classical</a></li>
<li><a href="#" class="genre">soundtrack</a></li>
</ul>
<div id="target"></div>
</body>
</html>