ホームページ  >  記事  >  ウェブフロントエンド  >  無効な jQuery デリゲート イベント監視の解決策

無効な jQuery デリゲート イベント監視の解決策

黄舟
黄舟オリジナル
2017-06-26 10:09:292157ブラウズ

WeChat の開発中に、jQuery のデリゲートによってバインドされた イベントの応答しない監視に対する解決策を見つけました。

フロントエンドの子供たちは、次の構造の元のコード

<a href="ssss">
<p>sssss</p>
<p>dddddd</p>
</a>

<div data-href="ssss">
<p>ssssss</p>
<p>dddddd</p>
</div>

に変更しました。コンテンツの非同期読み込みが含まれるため、次のコードはタグの機能を実装するために使用されます

$(document).delegate(&#39;[data-href]&#39;, &#39;click&#39;, function () {            
if ($(this).data(&#39;href&#39;)) {
                location.href = $(this).data(&#39;href&#39;);
            }
        });

PC ブラウザでは問題ありませんでしたが、iPhone 6 に付属のブラウザを開くと失敗してしまいました。

最終的にスタック上で解決策を見つけましたオーバーフロー、現在は次のように記録されています:

On iOS there is no event bubbling without a cursor style. So in your CSS you need to add cursor: pointer; to the element.

CSSコンテンツを追加

*[data-href]{cursor: pointer;
}

以上が無効な jQuery デリゲート イベント監視の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。