我正在嘗試創建一個通知區域來顯示警報。讓div內的所有鏈接調用相同的函數?
return this.each(function() {
jQuery('<div class="' + o['className'] + '">' + o.msg + ' +
'<a href="#" onclick="$(this).parent().remove(); dismiss(' + o["id"] + ');">X</a>' + '</div>')
.appendTo(this);
});
這只是從數據庫中取出一條消息,並顯示給用戶。如果用戶點擊X,那麼它將調用dismiss(),將其標記爲正在數據庫中讀取。
問題是,如果消息本身包含指向另一個頁面或外部網站的鏈接,我還想在用戶離開頁面之前調用dismiss()。是否有反正改變這個JavaScript採取所有a
元素(X和消息中出現的任何鏈接),並改變onclick調用函數?
@Brandon - 聽起來就像你有一個時髦的人物,你在說'X'部分還是'o.msg'部分?最糟糕的情況是,你可以刪除',text:o.msg'並在鏈中添加一個'.html(o.msg)'。 – 2010-04-20 01:50:50
o.msg部分。我實際上給了X鏈接一個類來將它從消息鏈接中分離出來(所以我可以將它浮動到右邊),現在o.msg部分可以工作。我不確定爲什麼。但我不相信這個工作。它生成的鏈接沒有點擊。 – Brandon 2010-04-20 01:53:19
@Brandon - 你不會在html中看到'onclick',它是一個事件處理程序,在代理的函數中放置一個'alert(id)'來看它被點擊。 – 2010-04-20 01:54:57