1
我有一個按鈕,這樣的jQuery/JavaScript的替換功能只能使用一次
<button id="toggle_photo">
<span id="photo_text">Hide Photos (1)</span>
<img class="icon" alt="Photos" src="/img/photos-16.png">
</button>
和jQuery/JavaScript廣告在點擊
$('#toggle_photo').click(function(){
var text = $('#photo_text').text();
$('#photo_text').text(
text.match(/Hide Photos/) ? text.replace("Hide", "Show") : text.replace("Show", "Hide"));
$('.photo_frame').toggle('slow');
});
這工作第一次點擊按鈕來更改文本並且按鈕文本從Hide Photo (1)
更改爲Show Photo (1)
。接下來,該按鈕HTML通過AJAX調用替換爲新的文本,新的內容是相同的,除了可能的算的,所以它可能顯示這個代替
<button id="toggle_photo">
<span id="photo_text">Hide Photos (3)</span>
<img class="icon" alt="Photos" src="/img/photos-16.png">
</button>
不過,這一次的元素沒有觸發點擊事件,爲什麼?
感謝您的提示,我沒有意識到「活」或「委託」方法,很好知道。實際上,整個按鈕的內容被替換了,不僅僅是' Bob
只有內容或者按鈕本身嗎? –
按鈕本身也是。我試圖讓'delegate'語法工作正確地說,點擊事件現在不會觸發,這就是我所擁有的'$('#toggle_photo')。委託('按鈕','點擊',功能(){...' – Bob