JavaScript弹出:调用JQuery

时间:2012-04-10 09:53:21

标签: javascript jquery

在我的应用程序中,我使用一个简单的JavaScript弹出窗口并以这种方式成功调用它 -

<a href="javascript:popup('Hello World')>Click Me</a>

我想知道是否可以在其他jQuery事件上调用相同的弹出窗口。例如

    $("#some_button_id").click( function() {

        javascript:popup('Hello World');

    });  

上述方法不起作用。还有其他解决办法吗?

3 个答案:

答案 0 :(得分:1)

编辑 - 您不需要javascript:部分,因为您没有附加内联的JavaScript。 但这不是错误的原因所以请确保在附加事件处理程序之前等待DOM准备就绪。

$(function(){
    var popup = function(msg){
        alert(msg);
    }
    $("#some_button_id").click( function() {

        popup('Hello World');

    }); 
});

当然要确保在某处定义popup()

答案 1 :(得分:1)

如果您的网页上定义了popup功能,那么您应该使用

$("#some_button_id").click( function() {
    popup('Hello World');
});

只有在html属性中直接使用javascript代码时才需要javascript:前缀。

答案 2 :(得分:0)

 $("#some_button_id").click( function() {

        popup('Hello World');

    });  

应该有用。

编辑

这将确保如果在事件被触发时id退出,是否已经在添加侦听器时创建了它,它被称为委托:

$(document.body).click( function(e) {
if(e.target.getAttribute("id")=="some_button_id"){
        popup('Hello World');
}
});