调用 jQuery 函数 onload



我有以下jquery函数,当我单击按钮时显示一个信息框,这工作正常,但我希望能够在页面加载时显示相同的信息框(无需按按钮)。但它不起作用,我做错了什么?

    // notification
if(jQuery('#growl2').length > 0) {
    jQuery('#growl2').click(function(){
        var msg = "Tip: Copy partnumber by searching for an exsisting and select it from grid.";
        jQuery.jGrowl(msg, { life: 5000});
    });
}

这是放在身体结束之前...

 <script>
 $(document).ready(function () {
     var msg = "Tip: Copy partnumber by searching for an exsisting and select it from grid.";
     jQuery.jGrowl(msg, { life: 5000 });
 });

它仅在我单击此按钮时有效。

<a id="growl2" class="btn btn-default"><small>Show message</small></a>

当您将其从 body 之前移动到 head 之前时,代码有效。

如果通过将 jQuery.js' 放在 body 标记之前来延迟 jQuery 的加载,也可能会出现此问题。

因此,要么将代码移动到头标签之前,要么<script src="jQuery.js" ></script>移动到头标签之前

或者你改用这个

<script>
window.onload = function(){
    var msg = "Tip: Copy partnumber by searching for an exsisting and select it from grid.";
     jQuery.jGrowl(msg, { life: 5000 });
}
</script>

您可以尝试以下操作:

function loadjGrowl() {
   var msg = "Tip: Copy partnumber by searching for an exsisting and select it from grid.";
   jQuery.jGrowl(msg, { life: 5000 });
}
window.onload = loadjGrowl;

注意:当页面完全加载时,这将触发。

如果您的按钮单击处理程序工作正常,您可以在附加它后立即通过调用.click()来激活它,而无需函数参数:

if(jQuery('#growl2').length > 0) {
    jQuery('#growl2').click(function(){
        var msg = "Tip: Copy partnumber by searching for an exsisting and select it from grid.";
        jQuery.jGrowl(msg, { life: 5000});
    }).click();   //  <---- this
}

最新更新