亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

用Hover來綁定元素事件時,如果要寫的樣式很多。先把樣式寫在樣式表再用attr()方法讀取類名。為什么現在反而沒反應了?是哪出了問題

? ? <style>

? ? .bjcolor{ background: #fff;}

? ? </style>

<body>

? ? <h2>.hover()方法</h2>

? ? <div class="left">

? ? ? ? <div class="aaron1">

? ? ? ? ? ? <p>觸發hover事件</p>

? ? ? ? </div>

? ? </div>

? ? <script type="text/javascript">


? ? // hover()方法是同時綁定 mouseenter和 mouseleave事件。

? ? // 我們可以用它來簡單地應用在 鼠標在元素上行為

? ? $("p").hover(

? ? ? ? function() {

? ? ? ? ? ? $(this).css("background", 'red');

? ? ? ? },

? ? ? ? function() {

? ? ? ? ? ? $(this).attr("bjcolor");

? ? ? ? }

? ? );



? ? </script>

</body>

換成.addClass()獲取也不行

_______________________________________________________________________________________________________________________

是不是要結合removeClass()才行?

? ? $('p').hover(

? ? ? ? function(){

? ? ? ? ? ? $(this).addClass("add");

? ? ? ? },

? ? ? ??

? ? ? ? function(){

? ? ? ? ? ? ?$(this).removeClass("add");

? ? ? ? }

? ? ? ? )



正在回答

6 回答

$(selector).attr(attribute)

attribute ? ?規定要獲取其值的屬性。 ? ?

0 回復 有任何疑惑可以回復我~

你這樣設置是不對的,顏色不會變? 因為權重不一樣,一個是行間樣式,一個是class屬性,class屬性是不可能覆蓋行間樣式的,你要是想和例子里面一樣的效果你就要把?$(this).css("background", 'red')后面加;$(this).attr("class","");

0 回復 有任何疑惑可以回復我~

糾正一下,.css可以動態修改樣式,而addClass只能靜態修改樣式,而$(this)是動態選擇器,所以這里這能用css動態修改樣式。

1 回復 有任何疑惑可以回復我~

$(this).addClass('bjcolor');就可以了

0 回復 有任何疑惑可以回復我~

這樣子好像還是不行啊

0 回復 有任何疑惑可以回復我~

?$(this).attr("class","bjcolor");

0 回復 有任何疑惑可以回復我~
#1

淡水狗 提問者

原來是這樣寫啊。謝謝了
2017-07-20 回復 有任何疑惑可以回復我~
#2

Mr_Jp黎 回復 淡水狗 提問者

你不是點了最佳答案嗎。。我以為你知道,我也是看了最佳回答才記起來的
2017-07-20 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

用Hover來綁定元素事件時,如果要寫的樣式很多。先把樣式寫在樣式表再用attr()方法讀取類名。為什么現在反而沒反應了?是哪出了問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號