[英]Getting event default handler's result from jQuery handler
假設存在一個帶有onclick事件的DIV元素:
<div onclick="return 'Hello world'"></div>
現在,我想從委托的jQuery事件中獲取此“ Hello world”字符串:
$('body').delegate('div', 'click', function(event){
var s = ...; // Now s is 'Hello world'
});
可能嗎?
我需要使用它作為復雜的IE錯誤的解決方法,因此僅IE解決方案可以。
PS對於那些想知道的人:錯誤是在IE8文檔模式下,即使錨點的“ onclick”處理程序中存在“ return false”,IE10也會遵循FORM元素內的鏈接。
var s = this.onclick();
盡管目前尚不清楚您要實現什么目標,但可以解決這個問題。
對您的代碼進行一些修改:
<div onclick="alert('Hello world');">Hello World</div>
和
$('body').delegate('div', 'click', function(e) {
e.preventDefault();
exec($(this).attr('onclick'));
});
JSFiddle: http : //jsfiddle.net/y7ABJ/
另一個選擇,因為不清楚您的目標是什么:
<div data-my-text="Hello world">Hello World</div>
和
$('body').delegate('div', 'click', function(e) {
e.preventDefault();
var s = $(this).data('myText');
alert(s);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.