Rumah >hujung hadapan web >tutorial js >Masalah menggunakan perwakilan dalam jQuery_jquery

Masalah menggunakan perwakilan dalam jQuery_jquery

WBOY
WBOYasal
2016-05-16 15:51:331060semak imbas

Saya biasa mengikat dan hidup, tetapi saya tidak biasa mewakilkan...

Sokongan untuk mengikat acara kepada elemen teg yang dijana secara dinamik mungkin secara langsung dan perwakilan, tetapi versi baharu tidak lagi menyokong secara langsung, hanya wakilkan

Delegasi benar-benar istimewa, berbeza daripada gaya mengikat acara lain.

Saya tersandung kerana saya sudah biasa dengan gaya ikatan sebelum ini.

Ringkasnya, ia adalah kecuaian.

Kaedah

delegate() menambah satu atau lebih pengendali acara pada elemen yang ditentukan (elemen anak bagi elemen yang dipilih) dan menentukan fungsi untuk dijalankan apabila peristiwa ini berlaku.

Pengendali acara menggunakan kaedah delegate() digunakan pada elemen semasa atau akan datang (seperti elemen baharu yang dicipta oleh skrip).

Tatabahasa

$(selector).delegate(childSelector,event,data,function)

Parameter Penerangan
childSelector Diperlukan. Menentukan satu atau lebih elemen anak yang mana pengendali acara dilampirkan.
acara

Diperlukan. Menentukan satu atau lebih acara untuk dilampirkan pada elemen.

Berbilang nilai acara dipisahkan oleh ruang. Mesti acara yang sah.

data 可选。规定传递到函数的额外数据。
function 必需。规定当事件发生时运行的函数。

比如这段小代码啊

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $("div").delegate("button","click",function(){
  $("p").slideToggle();
 });
});
</script>
</head>
<body>
<div style="background-color:red">
<p>这是一个段落。</p>
<button>请点击这里</button>
</div>

</body>
</html>

我老写成了

$(document).ready(function(){
 $("div").delegate($("button"),"click",function(){
  $("p").slideToggle();
 });
});

子选择器不需要选择起来了..

不然就像我那样出现不知名的错误(点击会触发click,但点击其他元素也会触发click...)

以上所述就是本文的全部内容了,希望大家能够喜欢。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn