1

我的瀏覽器擴展程序如下:上()不能按預期工作,爲新加載的內容不工作

$(document).ready(function() { 
    ... 
    $("input[type!='password'], textarea").on("keypress", function (event) { 
     ... 
    }); 
}); 

這反應如預期的正常加載內容但對於輸入或不工作稍後加載textareas。

我雖然這是應該做的,我用它錯了嗎?

我像這樣的東西玩耍了,試圖解決這個問題,但沒有成功

$(doocument).on("keypress", "input[type!='password'], textarea".... 

Here is a live example in jsfiddle,首先輸入按預期工作,所產生的那些沒有。

+1

請重現上http://jsfiddle.net – zerkms 2013-03-24 21:09:34

+0

@zerkms編輯,完成了! – Trufa 2013-03-24 21:16:41

+0

你甚至嘗試過最後一個選擇器 - > [**小提琴**](http://jsfiddle.net/yz7F5/4/) – adeneo 2013-03-24 21:25:57

回答

2
$(document).on("keypress", "input[type!='password'], textarea", function (event) { 
    alert("this works!"); 
}); 

偵聽器被附接到所述document,任何按鍵事件將針對input[type!='password']textarea進行檢查。

如果你的HTML標記物的方式,有的input[type!='password']textarea一個父容器的結構,你可以取代$(document)$('.parent-container')只附上元素上的監聽器,而不是整個文檔。

編輯: 下面是一個例子:http://jsfiddle.net/yz7F5/5/