這是一個視頻展示效果入问,希望使讀者對jquery的事件和動畫效果有一個更為全面的了解辨图。
視頻的展示效果如圖:
用戶可以單擊左上角的左右箭頭践险,來控制視頻展示的左右滾動猿妈,當(dāng)單擊向右箭頭時,下面的展示視頻會向左滾動隱藏捏境,同時新的視頻展示會以滾動方式顯示出來于游。
注意:
當(dāng)視頻展示內(nèi)容處于最后一個版面的時候毁葱,如果再向后垫言,則應(yīng)該跳轉(zhuǎn)到第一個版面;
當(dāng)視頻展示內(nèi)容處于第一個版面時倾剿,如果再向前筷频,就應(yīng)該跳轉(zhuǎn)到最后一個版面蚌成;
左上角的箭頭旁邊的藍色圓點,應(yīng)該與動畫一起切換凛捏,代表當(dāng)前所處的版面担忧。
首先要把頁面結(jié)構(gòu)設(shè)計好,html部分
下面就是16個li坯癣,存放圖片的
其次就是一些css樣式:
接下來就是按照需求編寫腳本瓶盛,來控制頁面的交互
首先通過jquery選擇器獲取向后的箭頭的元素,然后為它綁定點擊事件示罗。
因為“向右的箭頭”和“視頻展示區(qū)域”在同一個祖先元素下惩猫,所以可以通過“向右箭頭”來找到“視頻展示區(qū)域”,首先獲取“向右箭頭”的祖先元素蚜点,然后在祖先元素下尋找“視頻展示區(qū)域”
找到相應(yīng)的元素后轧房,就可以給相應(yīng)的元素添加動畫效果了,可以通過绍绘,animate()方法控制視頻展示區(qū)域奶镶,的left樣式屬性的值來達到動畫效果,很容易就可以獲取left的值陪拘,left的值就等于每個版面的寬度
使用width()獲取每個版面的寬度
jquery代碼:
點擊向左箭頭是的點擊事件:
點擊向右箭頭的點擊事件厂镇,和向左的點擊事件差不多,只是判斷時的不同
注意:javascript的動畫跟css密不可分左刽,在上例中剪撬,為元素設(shè)置合適的css屬性也至關(guān)重要,比如悠反,我們?yōu)椤皏_content”設(shè)置了overflow:hidden ? ?position:relative ? ?而后為它的子元素設(shè)置了postion:absolute