【问题标题】:Jquery - Call a js function when page loadedJquery - 页面加载时调用 js 函数
【发布时间】:2013-10-15 08:46:27
【问题描述】:

我的页面上有一个隐藏的 div,它在调用控制函数时显示。 我想在整个页面已加载(在 DOM 内?)或以 2 秒延迟调用时显示 div,因为有时在重新加载页面(带图像)时调用该函数,然后在页面加载时消失如果 php if 条件改变(mysqlquery result = 2)

我的 PHP 页面

if(mysqlquery result = 1) { 

echo '<script>'; 
echo "$(function(){ ShowAlertBox(); });";
echo '</script>';

}

我的 JS 页面

// # DOM Ready
$( function() {
...
...
}); <!-- end DOM -->

function ShowAlertBox(){
   $('.alert').show("slow");
} 

解决这个问题的最佳方法是什么?谢谢

编辑

我尝试了这种方式,但函数没有被调用

// # DOM Ready
$( function() {

    function ShowAlertBox(){
    $('.alert').show("slow");
    }

}); <!-- end DOM -->

【问题讨论】:

  • php 页面中的 js !!嗯听起来很糟糕!
  • 没有必要在 StackOverflow 上创建这样的问题。这是一项基本功能,如果您搜索过,您就会知道这并不难。这是他们的 API api.jquery.com 的页面,可以搜索或按 CTRL F 并在文档中搜索特定的关键字,例如 DOMLoad

标签: jquery


【解决方案1】:

用以下内容封装你的函数:

$(document).ready(function(){
     //Your code
});

这是告诉浏览器等到所有资源都加载完毕后再调用你的函数

JSFiddle example

【讨论】:

  • 我试图把函数放在文档就绪函数里面,但是函数没有被调用。什么是正确的语法?谢谢
  • @PaoloRossi 我添加了一个带有 setTimeout 添加的 JSFiddle 示例。隐藏的 DIV 将在页面加载 2 秒后开始出现
  • 假设您加载了 jquery 是否安全?
  • @LloydBanks 谢谢,但是如何在文档中调用我的函数(ShowAlertBox)并准备好超时?
  • @PaoloRossi 替换 "$('.alert').show("slow");"用“ShowAlertBox();”。我更新了小提琴链接。新版本显示被调用的函数
【解决方案2】:
$(function(){
   //Code should go here.
   $('.alert').show("slow");   // Show your alert box.
});

但是请阅读 jQuery 的基础知识。另外,请阅读method jQuery() 的文档:jQuery()

【讨论】:

    【解决方案3】:

    下面的代码是在整个页面加载完毕后执行的(All DOM!)...

    $(window).load(function(){
     // right down your code here...
    });
    

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-21
      • 2012-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多