jQueryでmouseoverとmouseenter、attrとprop、attrとcssの違い

2100 ワード

今日は主にmouseoverとmouseenter、attrとprop、attrとcssの3つの違いについてお話しします


一.mouseoverとmouseenterの違い1)2対のイベント:
         mouseover------mouseout
         mouseenter-----mouseleave
2)違い:
mouseoverおよびmouseoutでは、現在の要素のサブ要素または親要素をマウスで移動、移動するとイベントがトリガーされます.
mouseenterイベントとmouseleaveイベントは泡が立たないが、マウスが移動、移動すると、シングルサイン要素のサブ要素または親要素がイベントをトリガーしないということだ.
ケース:コンソール出力を見ると、マウスがサブdiv 3に移動するとイベントがトリガーされます.これがmouseoverのイベントバブルです. Title
$("#div1") .mouseover(function () { console.log('mouseover '); }) .mouseout(function () { console.log('mouseout '); }) $("#div2") .mouseenter(function () { console.log('mouseenter '); }) .mouseleave(function () { console.log('mouseleave '); })

二、attr()とprop()の違い
違い:
非ブールタイプのプロパティを操作するにはattr()
操作checked,selected,disabledのようなブールタイプの属性用prop()
三、attr()とcss()の違い
違い:
1)attr()は、ラベル属性を取得または設定するために使用される(Htmlラベルに関連)
2)css()は、要素のスタイルプロパティの取得/変更(styleに関連)です.
3)前者はのsrc属性を変更し,可以改变为href属性,改变title属性.但是后者不行,只能修改相关工作的特征。因此,后者是前者的サブセット,操作style这个特定属性.要约:那些不同,可以说是attr设定和属性值取得,css设定,style内的属性取得。