jQuery 1.9.1參數不會從觸發器傳遞到點擊處理程序,因爲在jquery 1.7.2中它們被很好地傳遞。jquery 1.9.1 .trigger()不將參數傳遞給點擊處理程序
一個例子來說明:
<!doctype html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<!--script src="http://code.jquery.com/jquery-1.7.2.min.js"></script-->
</head>
<body>
<input id="test" type="checkbox">
<button id='trigger'>trigger</button>
</body>
<script>
$('#test').bind('click',
function (e, data){
if (typeof data == 'undefined') {
alert('no data passed');
return;
}
alert('first passed=' + data.passed1 + ' second passed='+data.passed2);
});
$('#trigger').click(
function (e){
$('#test').trigger('click',{passed1:'first',passed2:'second'});
});
</script>
</html>
當我使用jQuery的1.7.2.js它仍然能正常工作。
我錯過了什麼?請幫幫我。
爲什麼你在'script'之前關閉'body'? – kapa 2013-03-10 23:15:10
測試後,沒有任何語法似乎能夠工作,看起來像是一個錯誤。 – 2013-03-10 23:21:50
看起來像一個奇怪的錯誤。 http://jsfiddle.net/xHVDx/1/ – kapa 2013-03-10 23:24:15