为何在页面加载时触发jQuery点击事件?

Eri*_*k Z 3 jquery events click

我有以下代码....当页面加载myFunc()被调用,即使我没有点击我的div.为什么?声明"内联"的函数未触发......嗯......

<div id="map" style="background: green; height: 100px"></div>

<script type="text/javascript">
    function myFunc() {
        alert("allways triggered when page loads...");
    };

    $(document).ready(function() {

    $("#map").click(myFunc());
    $("#map").click(function() { alert("not triggered") });

    });
</script>
Run Code Online (Sandbox Code Playgroud)

jan*_*mon 10

因为你的代码:

 $("#map").click(myFunc());
Run Code Online (Sandbox Code Playgroud)

是错的,必须是:

$("#map").click(myFunc);
Run Code Online (Sandbox Code Playgroud)

您的代码将首先调用myFunc(),然后模拟onclick事件.

如文档中所示:

你做的是:(因为myFunc返回null)

点击()

触发每个匹配元素的click事件.导致已执行绑定到该click事件的所有函数.触发页面上所有段落的click事件:$("p").click();

你想要的是这个:

click(fn)将函数绑定到每个匹配元素的click事件.单击指向设备按钮时,会触发单击事件.单击被定义为同一屏幕位置上的mousedown和mouseup.这些事件的顺序是: