天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JavaScript 圖片切割效果(放大鏡)第1/4頁

上一個版本由于是初次接觸這類效果,而且是三個大功能一起開發,能力所限,所以僅僅是實現了效果就完成了。
近來我把其中的 拖放效果 和 縮放效果 單獨出來研究,經過整理和完善,再套進切割效果,個人感覺效果已經不錯了。
要說明的是這個只是一個效果,并不是真正的切割圖片,要獲取真正的切割圖片請參考 圖片切割系統 。
效果預覽請看這里
完整實例下載
代碼太多貼不出來,只好給個效果圖:

程序說明

這個效果主要分三個部分:層的拖放、層的縮放、圖片切割(包括預覽)。
其中 層的拖放 和 層的縮放 我已經在其他兩篇文章中有詳細說明,這里就說說圖片切割這部分吧。

圖片切割

關于圖片切割的設計,有三個方法:

把圖片設為背景圖,通過設置背景圖的位置來實現,但這樣的缺點是只能按圖片的正常比例實現,不夠靈活;
把圖片放到切割對象里面,通過設置圖片的top和left實現,這個方法是可行,但下面有更簡單的方法實現;
通過設置圖片的clip來實現。
這里介紹方法3的實現方法,這個方法是從當年“珍藏”的代碼中看到的,先說說clip:
clip的作用是“檢索或設置對象的可視區域。可視區域外的部分是透明的。”
依據上-右-下-左的順序提供自對象左上角為(0,0)坐標計算的四個偏移數值來剪切。
例如:
復制代碼 代碼如下:
div { position:absolute; width:60px; height:60px; clip:rect(0 20 50 10); }

注意position:absolute的設置是必須的(詳細看手冊)。
下面說說具體實現原理:

首先需要一個容器(_Container),容器里面會插入三個層:

底圖層(_layBase):那個半透明的圖片;
切割層(_layCropper):正常顯示的那個部分;
控制層(_layHandle):就是控制顯示的那個部分。
其中為了底圖層和切割層是程序自動創建的圖片,控制層是自己定義的層(程序中是一個div)。
底圖層和切割層必須完全重合,程序中把這兩個層都絕對定位到了左上角:
復制代碼 代碼如下:
this._layBase.style.top = this._layBase.style.left = this._layCropper.style.top = this._layCropper.style.left = 0;

層疊順序也要設置一下保證各層順序。

JavaScript技術JavaScript 圖片切割效果(放大鏡)第1/4頁,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: CHINA篮球体育飞机2023 | good神马电影伦理午夜 | 色哒哒影院 | 俄罗斯xxxxxbbbbb | 20岁中国男同志china1069 20岁αsrian男同志免费 | 国产精品久久久久久久A片冻果 | 全黄h全肉细节全文 | 久久亚洲AV成人无码国产漫画 | xiao77唯美清纯 | 国产成人在线免费观看 | 男男肉肉互插腐文 | 古代荡乳尤物H妓女调教 | 亚洲性夜夜色综合网站 | 男女爽爽无遮挡午夜视频在线观看 | 门鱼电影完整版免费版 | 伦理片在线线249 | 国产99久久亚洲综合精品西瓜tv | 亚洲AV综合色一区二区三区 | 伊人久久亚洲综合天堂 | 欧美黑人经典片免费观看 | 伊人狼人久久精品热9 | 伊人精品视频直播 | 亚洲AV久久无码精品九号软件 | 少妇被阴内射XXXB少妇BB | 午夜电影三级还珠格格 | 女人高潮被爽到呻吟在线观看 | 亚洲伊人成综合人影院 | 久久超碰国产精品最新 | 91精品国产色综合久久 | 久久九九精品国产自在现线拍 | 成人性生交片无码免费看 | 前后灌满白浆护士 | 亚洲视频在线免费 | 成人网18免费韩国 | 伊人久久中文大香线蕉综合 | 亚洲乱亚洲乱妇在线观看 | 国产福利不卡在线视频 | 无码人妻少妇色欲AV一区二区 | 欧美性黑吊xxx | 国产欧美另类久久久精品免费 | 蜜桃狠狠色伊人亚洲综合网站 |