Vincent Thinking

          All about Vincent's work and life

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            34 隨筆 :: 0 文章 :: 183 評(píng)論 :: 0 Trackbacks
          當(dāng)需要取到鼠標(biāo)點(diǎn)擊相對(duì)于層的位置信息時(shí),在ie下可以用event.offsetX, evnet.offsetY,在Firefox下是event.layerX, event.layerY。但是firefox下總是有問(wèn)題,取到的不是相對(duì)于層的坐標(biāo),而是pageX,pageY。 Google了半天也沒(méi)有發(fā)現(xiàn)什么解決辦法,最后在一個(gè)網(wǎng)站看到一個(gè)例子,原來(lái)在層中要設(shè)置position為absolute或者relative。 OK,問(wèn)題解決,這點(diǎn)問(wèn)題竟然讓我花費(fèi)了2個(gè)小時(shí)。 :(
          posted on 2005-11-25 16:24 Vincent Thinking 閱讀(3133) 評(píng)論(7)  編輯  收藏 所屬分類: Work

          評(píng)論

          # re: 關(guān)于layerX,layerY 2007-01-11 12:05 susu
          太謝謝了,解決了我遇到的一個(gè)大問(wèn)題  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2007-01-11 12:05 susu
          太謝謝了,解決了我遇到的一個(gè)大問(wèn)題  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2007-06-02 23:22 angel
          非常謝謝.我就是FIREFOX 計(jì)算layerX出問(wèn)題.怎么也不是相對(duì)于發(fā)生事件的對(duì)象的坐標(biāo).
          看了你的文章.弄好了.原因是沒(méi)設(shè)置position  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2008-04-28 19:08 nichol
          再一次證明firefox沒(méi)有ie那么完善,雖然比較接近w3c,但卻覺(jué)得w3c沒(méi)有大哥的風(fēng)范。  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2008-08-18 17:37 tangzx
          謝謝...我也是被這個(gè)地方搞死了...不過(guò)在ff2下是好的 在ff3下就得加上position  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2008-11-03 21:52 gogog
          哈哈還好,還是自己計(jì)算好
          鼠標(biāo)指向的元素相對(duì)于網(wǎng)頁(yè)左上角的偏移-鼠標(biāo)相對(duì)于網(wǎng)頁(yè)左上角的偏移  回復(fù)  更多評(píng)論
            

          # re: 關(guān)于layerX,layerY 2009-05-16 13:23 JavaScriptor
          不明白不要亂講,在這里誤導(dǎo)群眾!

          offsetX/offsetY:相對(duì)于當(dāng)前元素的位移
          x/y:相對(duì)于當(dāng)前座標(biāo)系的位移,但是IE常常搞錯(cuò)當(dāng)前座標(biāo)系
          layerX/layerY:相對(duì)于當(dāng)前座標(biāo)系的位移
          pageX/pageY:相對(duì)于網(wǎng)頁(yè)的位移
          clientX/clientY:相對(duì)于可視窗口的位移
          screenX/screenY:相對(duì)于屏幕的位移

          offsetX/offsetY:W3C- IE+ Firefox- Opera+ Safari+
          x/y:W3C- IE+ Firefox- Opera+ Safari+
          layerX/layerY:W3C- IE- Firefox+ Opera- Safari+
          pageX/pageY:W3C- IE- Firefox+ Opera+ Safari+
          clientX/clientY:W3C+ IE+ Firefox+ Opera+ Safari+
          screenX/screenY:W3C+ IE+ Firefox+ Opera+ Safari+

          六對(duì)屬性只有clientX/clientY和screenX/screenY是W3C規(guī)范內(nèi)的。
          而offsetX/offsetY和pageX/pageY知其一組即可通過(guò)計(jì)算取得另一組,對(duì)于JS開(kāi)發(fā)者而言,F(xiàn)irefox/Opera/Safari提供的pageX/pageY更加實(shí)用。x/y和layerX/layerY本應(yīng)該是作用相同、名稱不同的兩組屬性,即相對(duì)于offsetParent對(duì)象的位移,但是IE對(duì)offsetParent的判斷卻相當(dāng)不準(zhǔn)確,大部份情況下offsetParent對(duì)象都等于body對(duì)象,最嚴(yán)重的后果就是在一個(gè)絕對(duì)定位的層中offsetParent對(duì)象本應(yīng)該為層對(duì)象,可IE卻依舊為body對(duì)象,導(dǎo)致座標(biāo)系混亂,而Opera和Safari中的x/y則同樣繼承了IE中的錯(cuò)誤,因此x/y屬性能不用則不用。  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 贵阳市| 论坛| 娄烦县| 邵阳市| 樟树市| 巩义市| 临沧市| 五原县| 浏阳市| 夹江县| 延川县| 喀喇沁旗| 青州市| 郯城县| 浦城县| 永新县| 新沂市| 伊金霍洛旗| 曲水县| 武城县| 宝山区| 商洛市| 文昌市| 来安县| 共和县| 漳平市| 丰原市| 晋江市| 图木舒克市| 彝良县| 柳林县| 汝州市| 大荔县| 克东县| 福安市| 平果县| 美姑县| 若尔盖县| 湾仔区| 疏勒县| 元朗区|