条件 javascript 代码不执行

发布于 2024-11-06 23:47:25 字数 817 浏览 2 评论 0原文

有谁知道为什么这段代码可能不起作用? touchmove 和 touchend 不只执行 touchstart 因为这是一个单独的事件和函数:)

$('input').live("touchstart", function (e) {$(this).addClass('click')});

$('input').live("touchmove,touchend", function (e) {
    if (e.type == 'touchmove'){
       $('.temp').removeClass('temp');
       $('.click').removeClass('click');
    }
    else{var inputvalue = $(this).val()
       $('input[value="' + inputvalue + '"] + label').css({
          '-webkit-transition': 'opacity 0.3s linear',
          'opacity': '0'
        });
        setTimeout(function () {
        $('input[value="' + inputvalue + '"]  + label').css({'-webkit-transition': '0','opacity': '1'});
            $('.temp').removeClass('temp');
            $('.click').removeClass('click');
        }, 300);}
    });

非常感谢您的任何尝试:)

Does anyone know why this code might not work? touchmove and touchend do not execute only touchstart because that's a seperate event and function :)

$('input').live("touchstart", function (e) {$(this).addClass('click')});

$('input').live("touchmove,touchend", function (e) {
    if (e.type == 'touchmove'){
       $('.temp').removeClass('temp');
       $('.click').removeClass('click');
    }
    else{var inputvalue = $(this).val()
       $('input[value="' + inputvalue + '"] + label').css({
          '-webkit-transition': 'opacity 0.3s linear',
          'opacity': '0'
        });
        setTimeout(function () {
        $('input[value="' + inputvalue + '"]  + label').css({'-webkit-transition': '0','opacity': '1'});
            $('.temp').removeClass('temp');
            $('.click').removeClass('click');
        }, 300);}
    });

Thanks a lot for any attempt :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

找回味觉 2024-11-13 23:47:25

“.live()”第一个参数中的事件名称需要用空格分隔,而不是逗号。

$('input').live("touchmove touchend", function (e) {

The event names in the first argument to ".live()" need to be separated by spaces, not commas.

$('input').live("touchmove touchend", function (e) {
甜柠檬 2024-11-13 23:47:25

我认为这会起作用

$('x').live("ontouchmove, ontouchend", function (e) { 
  //do stuff
  if (e.type == 'ontouchmove'){
    //do stuff
  }
  else{
    //do stuff
  }
});

I think this would work

$('x').live("ontouchmove, ontouchend", function (e) { 
  //do stuff
  if (e.type == 'ontouchmove'){
    //do stuff
  }
  else{
    //do stuff
  }
});
红尘作伴 2024-11-13 23:47:25

首先,您的事件变量应该是参数 e 而不是 event

其次,在测试相等性时,需要两个等号:==。一个等号是赋值运算符。

First off, your event variable should be the parameter e rather than event.

Second, when testing for equality, you need two equals signs: ==. One equals sign is the assignment operator.

白云悠悠 2024-11-13 23:47:25

当您打开站点/尝试运行该方法时,控制台会说什么? :)

//格纳

What does the console say when you open your site / trying to run the method? :)

//Gerner

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文