[英]Long button press on iOS (Javascript)
是否可以使按鈕能夠在iOS上長按按鈕? 我到處搜索,沒有找到解決此問題的任何方法。 首先,如果您長按一個按鈕,它將嘗試選擇它(用於復制)。 使用某些CSS,我禁用了此功能,但仍然無法注冊長按按鈕。 我認為這是因為您可能會滾動頁面,而不是首先長按它。 這樣做的目的是,我希望長按時該按鈕消失。
這是一個JSFiddle,可在PC上使用,但不能在我的iPhone上使用(有一個div被注釋掉了,因為長按是在div還是按鈕上都沒有關系,我可以使用div創建一個人造按鈕) : http : //jsfiddle.net/ynkLmz5n/3/
提前致謝。
var MenuToggle = document.getElementsByClassName("hide")[0];
MenuToggle.style["-webkit-user-select"] = "none";
MenuToggle.addEventListener("mousedown", Vanish);
MenuToggle.addEventListener("mouseup", VanishClear);
var timer;
function Vanish() {
longpress = false;
timer = setTimeout(function() {
MenuToggle.style.display = "none";
}, 1000);
}
function VanishClear() {
clearTimeout(timer);
}
您是否嘗試過使用touch
事件?
var timer
MenuToggle.addEventListener('touchstart', function() {
timer = setTimeout(function() {
MenuToggle.style.display = 'none'
}, 1000)
}, false)
MenuToggle.addEventListener('touchend', function() {
clearTimeout(timer)
}, false)
您需要使用touch
事件(touchstart和touchend)代替鼠標事件。
這是更新的小提琴: http : //jsfiddle.net/ynkLmz5n/4/
MenuToggle.addEventListener("touchstart", Vanish);
MenuToggle.addEventListener("touchend", VanishClear);
另外,如果您要添加觸摸交互,我建議使用Hammer.js。 這是一個很棒的觸控庫,其中包括對Press
支持)
項目頁面: http : //hammerjs.github.io/
新聞活動文檔: http : //hammerjs.github.io/recognizer-press/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.