[jQuery] 高級事件

<input type="submit" value="提交" />
    <input type="button" value="點擊" />
    <div class="d1">
        <div class="d2">
            <div class="d3">
                div
            </div>
        </div>
    </div>
 $(function () {


        $("input").click(function () {
            alert("點擊");
        });

        $("input").trigger("click");  // 模擬用戶點擊

        $("input").click(function () {
            alert("點擊");
        }).trigger("click");  // 模擬用戶點擊  只模擬一次

        $("input").click(function () {
            alert("點擊");
        }).click();  // 至關於trigger

        $("input").click(function (e, date1, date2) {
            alert(date1 + '|' + date2);
        }).trigger("click", ['123', 'abc']);  //trigger 額外數據,只有一條的時候,能夠省略中括號,多條不能省略,第二條以後就沒法識別了。

        $("input").click(function (e, date1, date2, date3, date4) {
            alert(date1 + '|' + date2 + '|' + date3[1] + '|' + date4.user);
        }).trigger("click", ['123', 'abc', ['a', 'b', 'c'], { user: "Lee" }]);

        $("input").bind("click", { user: 'Lee' }, function (e, date1, date2, date3, date4) {
            alert(date1 + '|' + date2 + '|' + date3[1] + '|' + date4.user + '|' + e.data.user);
        }).trigger("click", ['123', 'abc', ['a', 'b', 'c'], { user: "Lee" }]);

        $("input").bind("myEvent", function () {
            alert("點擊");
        }).trigger("myEvent");  //執行自定義事件

        $("input").click(function () {
            alert("點擊");
        }).click();  // 至關於trigger

        //trigger 提交後跳轉,沒有阻止默認行爲
        $("form").trigger('submit');

        $('form').submit(function (e) {
            e.preventDefault();  //阻止默認行爲
        }).trigger('submit');

        $("input").click(function () {
            alert("點擊");
        }).trigger("click").css("color", "red");    //返回JQuery對象,實現連綴

        $("div").bind("myEvent", function () {
            alert("自定義事件");
        })
        $(".d3").trigger("myEvent");  //會冒泡
        $("div").bind("myEvent", function () {
            alert("自定義事件");
        });

        $(".d3").triggerHandler("myEvent");  //不會冒泡

        $("input").bind("click.abc", function () {
            alert("abc");
        });
        $("input").bind("click.xyz", function () {
            alert("xyz");
        });
        $("input").bind("mouseover.abc", function () {
            alert("abc");
        });
        $("input").unbind("click.abc");  //移除click.abc 事件
        $("input").unbind(".abc");  //移除全部.abc 事件



    })
相關文章
相關標籤/搜索