我不知道这个JSFiddle有什么问题.
HTML:
<input type="button" value="test" onclick="test()">
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
function test(){alert("test");}
Run Code Online (Sandbox Code Playgroud)
当我点击按钮时 - 什么也没发生.控制台说"测试未定义"
我已经阅读了JSFiddle文档 - 它说添加了JS代码并添加了<head>HTML代码<body>(所以这个JS代码早于html并且应该工作).
我试图理解JSFiddle如何根据这个描述在"onLoad"中"包装"代码:[1]:http://doc.jsfiddle.net/basic/introduction.html#javascript .我已经看到onLoad被用在HTML的BODY标签中来加载函数.那么JSF(幕后)将我在JS窗口中创建的每个调用和每个函数都包装起来吗?又名:
onLoad = "myfunc1(),myfunc2,alert(1);"
Run Code Online (Sandbox Code Playgroud)
如果是这样,那么当我选择jQuery作为框架时,我应该避免使用这种格式:
$(document).ready(function(){
myfunc1{(...)}
myfunc1{(...)}
...
Run Code Online (Sandbox Code Playgroud)
如果是一个电枢问题,请提前道歉.
我对JavaScript和编程很新.我目前正处于一个小腌菜中,我正在玩一些代码,我想知道是否有人可以给我一些建议.
背景:
我正在使用的代码非常简单; 有一个时钟,当前时间在setInterval上运行,以便按秒更新.
在时钟下方有一个按钮,显示"停止",按下时,它将清除间隔,然后按钮将显示"开始".如果按下再次按下"开始"的按钮,它将继续时钟计时器在当前时间.所以基本上这一个按钮切换时钟的间隔,并且根据它的状态,按钮将显示"开始"或"停止".
W3Schools:JS Timing是我在创建我正在使用的代码时最初引用的地方.这是我在学习setInterval和clearInterval如何工作的地方.我还在示例中采用了一些代码并对其进行了调整,以便我可以尝试关闭和打开时钟计时器.
码:
var clock09 = window.setInterval(myTimer09, 1000);
function myTimer09() {
var d = new Date();
var t = d.toLocaleTimeString();
document.getElementById("req09").innerHTML =
"<h1>" + t + "</h1>";
}
function toggle10() {
var button = document.getElementById("button10").innerHTML;
if (button == "Stop") {
window.clearInterval(clock09);
document.getElementById("button10").innerHTML = "Start";
} else {
clock09 = window.setInterval(myTimer09, 1000);
document.getElementById("button10").innerHTML = "Stop";
}
}Run Code Online (Sandbox Code Playgroud)
<span class="center" id="req09"></span>
<button type="button" id="button10" onclick="toggle10()" class="button">Stop</button>Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/dtc84d78/
问题:
所以我的代码问题是按钮从"停止"按钮切换到"开始"按钮,但是clearInterval不使用setInterval应用于变量.
我在谷歌搜索过类似的问题,比如这个,我听从了他们的建议,但仍然没有.经过几个小时的努力弄清楚,我决定只将W3Schools的一些例子直接复制并粘贴到jsFiddle,这甚至都不起作用(包含在jsfiddle链接中)?
我真的只是疯了为什么clearInterval() …