繁体   English   中英

在页面加载时执行JavaScript,但在单击按钮时不执行

[英]Execute javascript on page load but not on button click

尝试了几次以使其低于Javscript才能在页面加载时执行。 当前,仅在单击“开始”按钮时有效。

如何使页面加载变得激动?

<script type="text/javascript">
function getFlashMovie(movieName) {
    var isIE = navigator.appName.indexOf("Microsoft") != -1;
    return (isIE) ? window[movieName] : document[movieName];
}
function start() {

    var active = document.getElementById("buttonstart").value == "stop";
    getFlashMovie("test").setProperty("src",  !active ? document.getElementById('url2').value: null);
    document.getElementById("start").value = active ? "buttonstart" : "buttonstop";
}
</script>

HTML

  <input id="url2" type="text" value="rtmp://localhost/?streammovie=test"/>

getFlashMovie(“ test”)。setProperty是将变量传递到SWF文件的函数。 在页面加载时,我希望它得到执行,而不是单击按钮。

要使您的函数在页面加载时执行,请提供以下代码:

window.onload = function() {
    start();
};

尝试这个:

<script type="text/javascript">
function getFlashMovie(movieName) {
    var isIE = navigator.appName.indexOf("Microsoft") != -1;
    return (isIE) ? window[movieName] : document[movieName];
}
function start() {

    var active = document.getElementById("buttonstart").value == "stop";
    getFlashMovie("test").setProperty("src",  !active ? document.getElementById('url2').value: null);
    document.getElementById("start").value = active ? "buttonstart" : "buttonstop";
}
start(); //added this
</script>

在尝试访问任何元素之前,只需确保已加载DOM。 尝试像这样在HTML的末尾运行start()函数;

  </body>
  <script type="text/javascript">
    start();
  </script>
</html>

您可以做的是:

<body onload="start();">

如果您考虑完全使用jQuery,则可以将代码包装在以下内容中:

$(document).ready(function(){

      //the code

});

该代码将在页面完全加载后执行,但是我不建议您添加jquery库,以便您可以使用此功能。

采用:

(function($){

 $(function(){
 // my code comes here
 });     

})(jQuery)

使用window.onload事件在加载时触发代码。


window.onload = function(){

//your code to execute
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM