脚本将页面变为白色

时间:2013-12-18 18:10:04

标签: javascript jquery

我有这个小脚本,如果有人播放音频文件的时间超过27秒,则假设为+1。

以前的代码工作正常,直到我的主机遭到黑客攻击并且我的代码被搞乱了。

现在我不知道它有什么问题 我在jQuery中不是那么好。我查了一些教程,并做了大量的猜测,所以我可以让这个代码工作。

$(document).ready(function () {

    $("#audio").bind('play', function () {
        document.clock.theButton.value = "Stop";
        stopwatch(this.value);
    });

    $("#audio").bind('pause', function () {
        document.clock.theButton.value = "Start";
    });

});

var sec = -1;

function stopwatch(text) {
    sec++;
    if (sec <= 9) {
        sec = "0" + sec;
    }
    document.clock.stwa.value = sec;

    if (document.clock.stwa.value == "27") {
        $("#play").load("<?php echo 'accounts.php?id={$id}&music={$music}&add_play=1'; ?>");
    }
    if (document.clock.theButton.value == "Start") {
        window.clearTimeout(SD);
        sec = sec - 1;
        return true;
    }
    SD = window.setTimeout("stopwatch();", 1000);
}

$(document).ready(function () {
    $("#audio").bind('ended', function () {
        sec = -1;
    });
});

我收到以下错误:

  

未捕获的ReferenceError:$未定义popup.js:1无法加载   资源盒.anchorfree.net/insert/41.js?v=413161526
  未捕获的TypeError:无法读取未定义的属性'stwa'

* 编辑 *

我已根据您的回复更新了代码,但我仍然遇到加载页面的部分问题。我已经改变了那个部分,并添加了警报,所以我可以确保php页面没有任何问题,但我甚至没有收到警报显示。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">

<script language="JavaScript" type="text/javascript">
    $(document).ready(function(){

  $("#audio").bind('play', function(){
document.clock.theButton.value = "Stop";
stopwatch(this.value);
  });

    $("#audio").bind('pause', function(){
document.clock.theButton.value = "Start";
  });

});

var sec = -1;
function stopwatch(text) {
   sec++;
 if (sec<=9) { sec = 0 + sec; }
   document.clock.stwa.value = sec;


  if(document.clock.stwa.value=="27"){
alert("Worked");
}
  if (document.clock.theButton.value == "Start") {
   window.clearTimeout(SD);
   sec=sec-1;
   return true; }
SD = window.setTimeout(stopwatch, 1000);
}
$(document).ready(function(){

  $("#audio").bind('ended', function(){
  sec=-1;
  });
});


</script>
 <form name="clock" style="display:none;"><br />
       <input type="text" size="12" name="stwa" id="stwa" /><br />
       <input type="button" name="theButton" onClick="stopwatch(this.value);" value="Start" />
       <input type="button" value="Reset" onClick="resetIt();reset();" />
       </form>

1 个答案:

答案 0 :(得分:-1)

1 - 将jQuery链接到页面

2 - 替换document.clock.stwa.value = sec;

document.clock.stwa.value = parseInt(sec);

3 - 替换SD = window.setTimeout("stopwatch();", 1000);

SD = window.setTimeout(stopwatch(), 1000);

4 - 检查html是否在表单'clock'中使用id'stwa'和'theButton'定义了任何输入,如下所示:

<form name="clock">
    <input type="text" id="stwa" name="stwa" value="00"  />
    <input type="button" id="theButton" name="theButton" value=""  />
</form>