js實(shí)現(xiàn)做通訊錄的索引滑動(dòng)顯示效果和滑動(dòng)顯示錨點(diǎn)效果
只做實(shí)現(xiàn)。。完全沒考慮性能優(yōu)化。所以我實(shí)現(xiàn)了以后特別卡。
第一個(gè)是在通訊錄右邊的索引條上進(jìn)行滑動(dòng),滑動(dòng)到相應(yīng)字母就跳轉(zhuǎn)到相應(yīng)字母的錨點(diǎn)上。
思路:監(jiān)聽touchmove事件,獲取clientX和clientY,傳入到elementFromPoint,然后獲取到元素以后執(zhí)行click()即可。
這里會(huì)有個(gè)問題,就是如果你的頁面中有遮罩層這一類的頂層元素的話,請將其pointer-events:none,就算這個(gè)元素的display:none;也沒用,實(shí)踐出真知??梢匀ピ囅?。
index為索引div的id
$("#index").get(0).addEventListener('touchmove',function(event){
var a = document.elementFromPoint(event.touches[0].clientX,event.touches[0].clientY).parentNode;
a.click();
});
第二個(gè)我是想在頁面滑動(dòng)到某個(gè)字母的位置時(shí)顯示閃一下這個(gè)字母。
思路:監(jiān)聽scroll事件,同樣利用elementFromPoint獲取你想要的位置的對應(yīng)元素,然后執(zhí)行顯示效果即可。
ps: 使用的是weui
$(window).scroll(function(){
var a = document.elementFromPoint(0,0);
if($(a).hasClass("weui_cells_title"))
{
$(".weui_toast_content_my").html($(a).attr("name"));
$("#toast").show(0);
$("#toast").slideUp(300);
}
});
好了,結(jié)束。
以上這篇js實(shí)現(xiàn)做通訊錄的索引滑動(dòng)顯示效果和滑動(dòng)顯示錨點(diǎn)效果就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解JS構(gòu)造函數(shù)中this和return
本文通過實(shí)例代碼給大家介紹了JS構(gòu)造函數(shù)中this和return,需要的朋友參考下吧2017-09-09
Avalonjs 實(shí)現(xiàn)簡單購物車功能(實(shí)例代碼)
avalon是國內(nèi)最強(qiáng)大的MVVM框架,最近小編在高購物車的項(xiàng)目,我們是用avalon來實(shí)現(xiàn)一些模塊的,所以順其自然的用avalon來實(shí)現(xiàn)購物車。接下來通過本文給大家分享Avalonjs 實(shí)現(xiàn)簡單購物車功能的實(shí)例代碼,需要的的朋友參考下2017-02-02
innerHTML,outerHTML,innerText,outerText的用法及區(qū)別解析
本篇主要是對innerHTML,outerHTML,innerText,outerText的用法及區(qū)別進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12

