Re: [問題] 有辦法讓A:hover後效果不消失嗎

看板Web_Design作者 (芬達)時間13年前 (2012/07/03 15:55), 編輯推噓0(0015)
留言15則, 4人參與, 最新討論串2/2 (看更多)
※ 引述《toshii (芬達)》之銘言: : CSS的A:hover效果是預設mouseover會有動作 : mouseout就恢復原狀 : 有沒有辦法去改變CSS的mouse離開的行為 : 我希望mouse從A選單移到B選單時照舊 : 就是A選單效果消失而B選單效果出現 : 但若從A移到移到頁面其他地方,能不要讓選單效果消失 : 這個我就做不出來 : 想想好像不用CSS,改寫成javascript用mouse event應該可達成 : 但是就要捨棄原本的CSS那一套了 : 對了我會想這樣做是因為原網頁在觸控制式銀幕上 : 手指點下去選單出來, 手指一離開就不見了 : 最後只好使用2指神功,一指點主選單,一指點子選單即可 : 這樣有點遜 : 現在撰寫網頁如果事先為了智慧型手機上著想 : 是不是不建議用CSS的hover語法了 : 要改成用JS的onclick才比較好 : (甚至JS的mouse event也都要捨棄) 不好意思我自問自答, 因為我終於在網路上找到解決方法了 只要在頁面尾端加上 var myLinks = document.getElementsByTagName('a'); for(var i = 0; i < myLinks.length; i++){ if(typeof(myLinks[i].addEventListener)=="undefined") continue; myLinks[i].addEventListener('click', function() { if( this.className.search(/.* iehover$/) >=0 ) this.className=this.className.replace(new RegExp(" iehover\\b"), ""); else this.className+=" iehover"; }, false); } 但是我看不懂iehover是幹嘛的 $是jQuery的語法嗎 所以有應用到jQuery吧 -- 看不見太陽那就賞月吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.39.163.40

07/03 16:19, , 1F
如果找到方法卻不知道原因的話,建議先不要用,否則以後要
07/03 16:19, 1F

07/03 16:19, , 2F
改反而你會不知道該怎麼改..
07/03 16:19, 2F

07/03 16:20, , 3F
$ 是寫在 regexp裡面,跟jquery無關,iehover是classname
07/03 16:20, 3F

07/03 16:20, , 4F
你應該還有用到css在裡面
07/03 16:20, 4F

07/03 16:20, , 5F
我覺得這看起來跟你要的東西沒關係
07/03 16:20, 5F

07/03 16:20, , 6F
說錯,不是css,是你的js有抓iehover的class處理事件
07/03 16:20, 6F

07/03 17:53, , 7F
沒關係嗎?但是效果有出來耶,我手指離開銀幕後選單不會消失
07/03 17:53, 7F

07/03 17:53, , 8F
但是在pc上依然可以mouseout時選單消失
07/03 17:53, 8F

07/03 17:57, , 9F
呀,樓上說的對,有個.js裡有function寫到iehover
07/03 17:57, 9F

07/03 17:58, , 10F
反正我都copy過來用就可以了,要研究一下
07/03 17:58, 10F

07/03 18:03, , 11F
你手指離開銀幕,所以你是用平板??
07/03 18:03, 11F

07/03 18:08, , 12F
,我就是在觸控式銀幕上遇到問題的
07/03 18:08, 12F

07/03 18:23, , 13F
這段是click連結時原本有iehover的class就去掉,不然就加上
07/03 18:23, 13F

07/03 18:26, , 14F
就是你說的用js event作,跟:hover沒關係
07/03 18:26, 14F

07/11 01:23, , 15F
iehover在這裡應該只是用來判斷使用者的瀏覽器是否為ie
07/11 01:23, 15F
文章代碼(AID): #1FygLy62 (Web_Design)
文章代碼(AID): #1FygLy62 (Web_Design)