OnClick 在 iOS11 上不起作用

Posted

技术标签:

【中文标题】OnClick 在 iOS11 上不起作用【英文标题】:OnClick not Working on Ios11 【发布时间】:2018-02-15 10:25:16 【问题描述】:

我在除 ios 11 之外的任何设备上都有以下功能,但不知道为什么, 我尝试了一些在这里找到的解决方案,但它不起作用,例如:更改选择器,添加'cursor:pointer'样式,在函数之前设置一个空的onclick,但没有成功。

知道为什么会发生(或不发生),

这是js代码

    $('#buy-mobile-buttons-section').delegate('.buy-button', 'click', function(data) 
    alert('E');
    var $self = $(this);
    addToCart($(this), function(data)
        if (data > 0)
            addGMTAddToCart($self);
            var url = Routing.generate('pcc_cart_detail');
            $(location).attr("href", url);
        
    );

);

这是 html

<button type="button" data-loading-text="Añadiendo..." id="js-buy-button-mobile" class="btn btn-primary btn-lg buy GTM-addToCart buy-button"
    data-name="Asus K541UA-GO1205T Intel Core i7-7500U/8GB/1TB/15.6&quot;" 
    data-id="134853" data-price="633.49" data-brand="Asus"
    data-category="Portátiles" data-qty="1">
    <strong>Buy</strong>
    <i class="pccom-icon">]</i>

希望你能理解,我的英语不是最好的arround

【问题讨论】:

你试过on()而不是delegate()吗? 您正在使用哪个版本的 jquery,因为 .delegate() 已被弃用。它被 .on() 方法取代,因为`jQuery 1.7` @PankajMakwana 是的,我尝试将选择器更改为 '#js-buy-button-mobile' 并将其更改为 on(): $(document).on('click', '#js -buy-button-mobile', function() //code ) 但还是不行 @Curiousdev jQuery 3.2.1,但尝试了 on() 方法,结果相同 你如何使用on 显示你的代码,这样我就可以看到问题到底出在哪里。另一件事我无法在上面的代码中找到 id buy-mobile-buttons-section 的按钮,id 是 js-buy-button-mobile 可能是你错过的东西 【参考方案1】:

试试jquery绑定函数。

例如:

$( "#foo" ).bind( "click", function() 
    alert( "User clicked on 'foo.'" );
);

【讨论】:

这没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review 对不起。我现在用一个建议修复它 试过了,结果还是一样,可以在任何设备上运行,但在 iOS 上还是不行 你看过这个链接了吗github.com/facebook/react/issues/134。看来这些家伙对 ios 也有同样的问题

以上是关于OnClick 在 iOS11 上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

onClick 在移动设备上不起作用(触摸)

一些 javascript 函数在 iOS 设备(iPhone、iPad)上不起作用

onclick 事件在 iPhone 上不起作用

设置 UIBarButtonItem 动画在 iOS 11 上不起作用

JS li 标签 onclick 在 IE8 上不起作用

反应本机 InputAccessoryView 在 iOS 11 上不起作用