最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jquery BS,dialog控件自適應(yīng)大小

 更新時間:2009年07月06日 13:19:45   作者:  
今天準(zhǔn)備用jquery.alerts的開源控件,基于jquery的,代碼很少,很容易就搞定。
樣式有點丑,為此,還重搞了個樣式,哪知以為完工的時候,發(fā)現(xiàn)IE上工作不正常,自適應(yīng)大小等無法實現(xiàn)。

原來它需要xhtml才行,而公司的產(chǎn)品是html的。為此,研究了一下自適應(yīng)大小的實現(xiàn)。

原來一直覺得jquery取寬度高度很神奇,原來是直接取的dom中element的offsetWidth/offsetHeight等屬性,當(dāng)有element插入dom中,瀏覽器就會根據(jù)規(guī)則計算出相應(yīng)的屬性,這里抄幾個相關(guān)的屬性。

scrollWidth 是對象的實際內(nèi)容的寬,不包邊線寬度,會隨對象中內(nèi)容的多少改變(內(nèi)容多了可能會改變對象的實際寬度)。

clientWidth 是對象可見的寬度,不包滾動條等邊線,會隨窗口的顯示大小改變。

offsetWidth 是對象的可見寬度,包滾動條等邊線,會隨窗口的顯示大小改變。

clientWidth、offsetWidth、clientHeight..區(qū)別



IE6.0、FF1.06+:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
IE5.0/5.5:
clientWidth = width - border
clientHeight = height - border
offsetWidth = width
offsetHeight = height
(需要提一下:CSS中的margin屬性,與clientWidth、offsetWidth、clientHeight、offsetHeight均無關(guān))

offsetwidth:是元素相對父元素的偏移寬度。等于border+padding+width
clientwidth:是元素的可見寬度。等于padding+width
scrollwidth:是元素的寬度且包括滾動部分。

研究了下實現(xiàn)不了的原因。原來是jquery.alerts控件里面全是div的,簡單的HTML在IE里,div的寬度似乎不根據(jù)內(nèi)部內(nèi)容變大而變大,直接有多大就多大,這樣取到的offsetWidth就很大了,自適應(yīng)大小就沒實現(xiàn),當(dāng)然XHTML的情況取offsetWidth就可以了。

看了下EXT的實現(xiàn)方式,它就聰明多了,內(nèi)部內(nèi)容用span等隨內(nèi)容大小變化的el,這樣取到offset屬性就真實了,然后將內(nèi)部一個個el的寬度都加上,包括padding和border,算出外層的總寬度。

雖然也想簡單用xhtml,但沒辦法。還是學(xué)EXT,雖然麻煩一些,但可靠。

相關(guān)文章

最新評論

苏州市| 曲阜市| 界首市| 阳山县| 礼泉县| 浪卡子县| 汝州市| 深圳市| 玉溪市| 民和| 泾阳县| 昭平县| 全椒县| 宁蒗| 台北县| 湘潭县| 金华市| 彩票| 永登县| 花垣县| 延寿县| 米泉市| 长顺县| 黄冈市| 崇礼县| 张家界市| 左云县| 高碑店市| 凉山| 定安县| 西丰县| 正安县| 莆田市| 蒲城县| 肇源县| 客服| 江油市| 陈巴尔虎旗| 乐业县| 白水县| 民丰县|