看板 Web_Design 關於我們 聯絡資訊
※ 引述《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
kerash:如果找到方法卻不知道原因的話,建議先不要用,否則以後要 07/03 16:19
kerash:改反而你會不知道該怎麼改.. 07/03 16:19
kerash:$ 是寫在 regexp裡面,跟jquery無關,iehover是classname 07/03 16:20
kerash:你應該還有用到css在裡面 07/03 16:20
ssccg:我覺得這看起來跟你要的東西沒關係 07/03 16:20
kerash:說錯,不是css,是你的js有抓iehover的class處理事件 07/03 16:20
toshii:沒關係嗎?但是效果有出來耶,我手指離開銀幕後選單不會消失 07/03 17:53
toshii:但是在pc上依然可以mouseout時選單消失 07/03 17:53
toshii:呀,樓上說的對,有個.js裡有function寫到iehover 07/03 17:57
toshii:反正我都copy過來用就可以了,要研究一下 07/03 17:58
kerash:你手指離開銀幕,所以你是用平板?? 07/03 18:03
toshii:,我就是在觸控式銀幕上遇到問題的 07/03 18:08
ssccg:這段是click連結時原本有iehover的class就去掉,不然就加上 07/03 18:23
ssccg:就是你說的用js event作,跟:hover沒關係 07/03 18:26
heyyosweet:iehover在這裡應該只是用來判斷使用者的瀏覽器是否為ie 07/11 01:23