本文介绍了禁用移动设备的jQuery的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想为移动设备禁用部分jQuery脚本,以下是我要禁用的代码:
I would like to disable part of my jQuery script for mobile devices, heres the code I'd like to disable:
$('#inner-slide1').click(function(e) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
});
$('#inner-slide2').click(function(e) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
});
$('#inner-slide3').click(function(e) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
});
$('#inner-slide4').click(function(e) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
});
$('#inner-slide5').click(function(e) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
});
感谢您的任何建议.
推荐答案
如果只给这些元素提供一个类,则只需要重复执行一次就重复了5次(我打算使用.inner-slide
) :
You're repeating a function 5 times when you need only do it once if you just give those elements a class (I'm going for .inner-slide
):
var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ? true : false;
$('.inner-slide').click(function(e) {
if(!isMobile) {
e.preventDefault();
dataslide = $(this).attr('data-slide');
goToByScroll(dataslide);
}
});
if语句仅在移动设备(Android,webOS,iPhone,iPad,iPod,Blackberry)上为true
The if statement will only result to true on a mobile device (Android,webOS,iPhone,iPad,iPod,Blackberry)
请注意
$(this).attr('data-slide');
也可以写成:
$(this).data('slide');
这篇关于禁用移动设备的jQuery的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!