頁面上經常會有彈跳窗,有的彈跳窗是動態產生的,有的彈跳窗是在頁面底部隱藏的,對於動態產生的彈窗,如果要監聽彈窗的事件,可以使用jQuery的事件綁定on()方法實作。
如圖,彈跳窗是js動態產生的,透過點擊某個連結彈出,彈跳視窗中的「立即去使用」連結點擊後,實現的效果是關閉彈窗,並跳到錨點。
這個a標籤是:
我們要監聽彈窗裡面的click事件,但這個彈跳窗本身是動態產生的,因此我們要監聽body,透過on()事件綁定,當動態產生這個彈跳窗時,可以監聽到click方法:
function jump_to_anchor() { $("body").on("click", "span[name='msgbox_info'] a, .act-pop-table a", function (e) { link = $(this).attr('href'); if (link == 'http://act.vip.***.com/vip/2016/51dps/#gamelist') { e.preventDefault(); msgExit(); window.location.href = link; } }); }
這裡實際上是綁定了兩個a標籤的事件綁定,都是當這個鏈接是某個url,阻止默認行為,並調用關閉彈窗方法,跳到該鏈接,也就是錨點。