Board logo

標題: jquery 程式碼注入Html [打印本頁]

作者: lolmuta    時間: 2015-11-21 17:36     標題: jquery 程式碼注入Html

本帖最後由 lolmuta 於 2015-11-21 17:40 編輯

這是在本論壇 的"javascript 討論" 上注入程式碼,注入的方式是靠chrome 的擴展功能。
效果是會在每個標題的後面加上一個按鈕,名稱叫"test"
當按下test,則會顯示該標題背後的超連結網址。
雖然創造的按鈕都有觸發事件,但是所顯示的連結都是最後一個標題的網址。
而非該標題的網址,這是什麼原因啊…?要如何修改才能正常運行呢?
$(document).ready(function(){
        $('th[class="subject common"]').each(function(){
                get_href=$(this).find('a').attr("href");
                new_ele = $("<button type='button'>test</button>");
                new_ele.click(function(){
                        alert(get_href);
                });
                $(this).append(new_ele);
        });        
});

作者: wmh    時間: 2015-11-22 02:17

回復 1# lolmuta

get_href 會是 global 的,所以多次改變內容後,只會留下最後的那次內容,因此結果就不如預期。

因為你有用到 jQuery,建議你改用 delegate 的方式來綁定按鈕的事件,
當按鈕按下後,再用相對關係找出正確的元素來處理。




歡迎光臨 jsGears.com 技術論壇 - AJAX, JavaScript, jQuery, 網站開發, 前端效能優化 (http://jsgears.com/)