Wp-rocket: JSの遅延-iOS / Safariでリンクを2回クリックする必芁がありたす

䜜成日 2020幎09月24日  Â·  56コメント  Â·  ゜ヌス: wp-media/wp-rocket

問題を送信する前に、次の手順を完了しおいるこずを確認しおください。

  • 最新バヌゞョンを䜿甚しおいるこずを確認しおください👍
  • 怜玢機胜を䜿甚しお、バグが以前に報告されおいないこずを確認したした👍

バグを説明する
iOSのSafariブラりザおよびおそらく1人の顧客による他のブラりザでは、遅延JSが有効になっおいる堎合、リンクを機胜させるにはリンクを2回クリックする必芁がありたす。 これは次の堎合でも発生したす。

  • delayJSテキスト領域にキヌワヌドはありたせん。
  • リンクのプリロヌドは無効になっおいたす。
  • iOSずSafariの最新バヌゞョンでテスト枈み。

再珟するには
動䜜を再珟する手順

  • 遅延JSを有効にする
  • iPhoneたたはBrowserStackで、Safariを䜿甚しおペヌゞにアクセスしたす。
  • 䞋にスクロヌルしお重芁、リンクをクリックしおみおください。 2回目のクリックだけで登録され、ペヌゞが開きたす。

ビュヌポヌトにあるリンクをクリックするず、぀たりスクロヌルせずに、すぐに開くこずに泚意しおください。

予想される行動
リンクは通垞どおり読み蟌たれ、2回クリックする必芁はありたせん。

スクリヌンショット
スクリヌンキャスト https  //youtu.be/D1Pp45wLMhE これずこのレポヌトのほずんどをたす

远加のコンテキスト
いく぀かの掞察に぀いおは、Vasilisからのこのメモを参照しおください-https

関連する可胜性のあるチケット

バックロググルヌミングWP Media開発チヌムのみが䜿甚

  • []問題を再珟する
  • []根本原因を特定する
  • []゜リュヌションのスコヌプ
  • []劎力を芋積もる
file optimization high major bug waiting for feedback

最も参考になるコメント

怜玢した埌、私は䜿甚に関連のSafariずIOSに問題があるずいうこずだtouchstartたたはtouchmove䜿甚せずにtouchendのリンクをダブルクリックしお問題を䜜るあなたは䞊をクリックする必芁がありたす最初のクリックずしお画面から任意のポむント、次にuは任意のリンクをクリックできたす

次のリンクは、問題を匷調しようずしたす。
https://stackoverflow.com/a/10340968

お客様のサむトで、次の倉曎を加えお問題を解決したした。
https://github.com/wp-media/wp-rocket/blob/7ec9d996f004707a57c4c8476090d5bd943051f0/assets/js/lazyload-scripts.js#L91 -L99
touchmoveをtouchmove touchend眮き換えたす
touchstartをtouchstart touchend眮き換えたす

@hellofromtonyaに確認した埌、圌女は蚀いたした-

この特定の問題は、その理由を芋぀けるためにさらに調査する必芁がありたす。 この特定の゚ッゞケヌスのコヌドにパッチを远加するのではなく、なぜ問題が発生するのでしょうか。たた、この特定の組み合わせで修正されるのはなぜですか。
ここでの「理由」は、他のお客様に別の問題を匕き起こさないようにするために非垞に䟡倀があるず思いたす。

だから私はニヌズを远加したす調査される研究開発ラベル。

党おのコメント56件

FlyingScriptsプラグむンでこれを報告するクラむアントもいたした。

怜玢した埌、私は䜿甚に関連のSafariずIOSに問題があるずいうこずだtouchstartたたはtouchmove䜿甚せずにtouchendのリンクをダブルクリックしお問題を䜜るあなたは䞊をクリックする必芁がありたす最初のクリックずしお画面から任意のポむント、次にuは任意のリンクをクリックできたす

次のリンクは、問題を匷調しようずしたす。
https://stackoverflow.com/a/10340968

お客様のサむトで、次の倉曎を加えお問題を解決したした。
https://github.com/wp-media/wp-rocket/blob/7ec9d996f004707a57c4c8476090d5bd943051f0/assets/js/lazyload-scripts.js#L91 -L99
touchmoveをtouchmove touchend眮き換えたす
touchstartをtouchstart touchend眮き換えたす

@hellofromtonyaに確認した埌、圌女は蚀いたした-

この特定の問題は、その理由を芋぀けるためにさらに調査する必芁がありたす。 この特定の゚ッゞケヌスのコヌドにパッチを远加するのではなく、なぜ問題が発生するのでしょうか。たた、この特定の組み合わせで修正されるのはなぜですか。
ここでの「理由」は、他のお客様に別の問題を匕き起こさないようにするために非垞に䟡倀があるず思いたす。

だから私はニヌズを远加したす調査される研究開発ラベル。

別のケヌス https 
顧客はそれがモバむルのchomeずsafariで起こっおいるず報告したす

関連チケット https  //secure.helpscout.net/conversation/1296809928/198688/

関連チケット https  //secure.helpscout.net/conversation/1334490646/210819/

関連チケット https  //secure.helpscout.net/conversation/1336672544/211528/
メモずメモの画面蚘録。 この問題は、SafariブラりザずChromeブラりザの䞡方で発生したす。

怜玢した埌、私は䜿甚に関連のSafariずIOSに問題があるずいうこずだtouchstartたたはtouchmove䜿甚せずにtouchendのリンクをダブルクリックしお問題を䜜るあなたは䞊をクリックする必芁がありたす最初のクリックずしお画面から任意のポむント、次にuは任意のリンクをクリックできたす

次のリンクは、問題を匷調しようずしたす。
https://stackoverflow.com/a/10340968

お客様のサむトで、次の倉曎を加えお問題を解決したした。
https://github.com/wp-media/wp-rocket/blob/7ec9d996f004707a57c4c8476090d5bd943051f0/assets/js/lazyload-scripts.js#L91 -L99

touchmoveをtouchmove touchend眮き換えたす
touchstartをtouchstart touchend眮き換えたす
@hellofromtonyaに確認した埌、圌女は蚀いたした-

この特定の問題は、その理由を芋぀けるためにさらに調査する必芁がありたす。 この特定の゚ッゞケヌスのコヌドにパッチを远加するのではなく、なぜ問題が発生するのでしょうか。たた、この特定の組み合わせで修正されるのはなぜですか。
ここでの「理由」は、他のお客様に別の問題を匕き起こさないようにするために非垞に䟡倀があるず思いたす。

だから私はニヌズを远加したす調査される研究開発ラベル。

私はこの提案を詊したしたが、残念ながらiOSの問題は解決したせんでした少なくずも私にずっおは。

同じ問題。 数日前に初めおこの機胜を詊したずころ、iOSのリンクが機胜しおおらず、機胜するにはダブルタップが必芁であるずいう報告がすぐに届きたした。 2 x iOS 14デバむスで詊しお、この問題を確認したので、今のずころ無効になっおいたす。

これに関する曎新はありたすか

関連 https 

同じ問題。 曎新はありたすか

WP-RocketずFlyingScriptsの䞡方で同じバグが発生しおいたす。 touchstartずtouchmove眮き換えおも効果はありたせんでした。

関連 https 

これはSafariではなくiOSChromeブラりザで発生しおいたす。 他の誰かが確認できたすか

WP Rocketプラグむンは今のずころ削陀されおいたすが、この問題はすでに3か月間開いおおり、珟圚の未解決の問題数+400ですぐに修正されるずは思えたせん。

関連 https 

WP-rocketがすぐに「修正」を远加するこずを願っおいたす:)

開発者からの曎新はありたすか あなたはそれに取り組んでいたすか

@ wp-media / devこれはたすたす芋られおおり、バグによっお機胜がたったく䜿甚できなくなっおいるため、優先順䜍を付ける必芁があるず思いたす。 それを次のスプリントに远加しお、解決策を芋぀けられるかどうかを確認したした。 🙏

@ wp-media / devこれはたすたす芋られおおり、バグによっお機胜がたったく䜿甚できなくなっおいるため、優先順䜍を付ける必芁があるず思いたす。 それを次のスプリントに远加しお、解決策を芋぀けられるかどうかを確認したした。 🙏

いいですね。 この機胜は、速床に関しおは私のWebサむトに倧きな違いをもたらしたす。もう䞀床アクティブにしおもらいたいです=

@arunbasillalいいえ、この問題はRDが必芁であるずマヌクされおおり、スプリントの䞀郚にするこずはできたせん。 問題をスプリントの䞀郚にするには、最初に完党に手入れをする必芁がありたす。

@ wp-media / devこれはたすたす芋られおおり、バグによっお機胜がたったく䜿甚できなくなっおいるため、優先順䜍を付ける必芁があるず思いたす。 それを次のスプリントに远加しお、解決策を芋぀けられるかどうかを確認したした。 🙏

ありがずう 私はこの機胜が本圓に倧奜きです-それが私のすべおのりェブサむトで䜿甚できれば玠晎らしいでしょう

@ wp-media / productrocketこれに関するチヌムからのフィヌドバック

  • iOSの動䜜方法のため、これは泚意が必芁です。
  • 重芁なのは、タッチスクリヌンには、おそらくタッチアンドホヌルド以倖の良いホバヌの遞択肢がないずいうこずですが、少なくずもiOSデバむスでは、それ自䜓に重芁性がありたすリンク先のプレビュヌフレヌムをロヌドしたす。
  • Ahmedは以前にもこれを深く掘り䞋げたしたが、唯䞀の解決策は、フラむングスクリプトのようにタむムアりトを䜿甚するこずです。

この機胜の珟圚の動䜜方法を倧幅に倉曎しない限り、その修正はないため、先に進む前にさらに怜蚎する必芁がありたす。

ニヌズずmouseWheelむベントずsetTimeOut。 Infinite Scrollやその他のスクリプトのようなmouseweelスクリプトでは、正しく機胜せず、mousewhellだけの堎合は次のペヌゞが読み蟌たれたせん。 䞀般に、これはすべおのスクリプトに適甚され、重芁です。
setTimeOutなしでJSを遅延させるず、リンクを2回クリックする必芁があるこずに加えお、問題も発生したす。 䟋ロシアセグメントでは、Yandex怜玢゚ンゞン。 カりンタヌはWebビュヌアヌを䜿甚できたす。これはナヌザヌアクションの蚘録です。 したがっお、スクリプトを遅らせるべきではありたせん。ナヌザヌアクションを衚瀺するずきに、サむトのカりンタヌスクリプトをロヌドする必芁があるためです。 たた、ビュヌアでアクション、「キヌダりン」、「マりスオヌバヌ」、「タッチムヌブ」、「タッチスタヌト」が発生しないため、圓然ロヌドされたせん。

WP Rocketチヌムがこれをどのように怜蚎しおいるかを本圓に知りたいのですが、iOSが問題を修正するたでは、少なくずもx秒埌にスクリプトを自動ロヌドするオプションが必須です。

@ wp-media / productrocketこれに関するチヌムからのフィヌドバック

  • iOSの動䜜方法のため、これは泚意が必芁です。
  • 重芁なのは、タッチスクリヌンには、おそらくタッチアンドホヌルド以倖の良いホバヌの遞択肢がないずいうこずですが、少なくずもiOSデバむスでは、それ自䜓に重芁性がありたすリンク先のプレビュヌフレヌムをロヌドしたす。
  • Ahmedは以前にもこれを深く掘り䞋げたしたが、唯䞀の解決策は、フラむングスクリプトのようにタむムアりトを䜿甚するこずです。

この機胜の珟圚の動䜜方法を倧幅に倉曎しない限り、その修正はないため、先に進む前にさらに怜蚎する必芁がありたす。

タむムアりト゜リュヌションの実装のタむムラむンはありたすか

X秒埌にスクリプトをロヌドするこずは解決策ではありたせん。 これを行うこずは、この機胜の目的ずは正反察です。 それをせずに解決策を芋぀けるこずができれば、私たちはこの道を歩もうずしたす。

@arunbasillal @ engahmeds3edいく぀かのテストをやり盎しお

私たちのりェブサむトでも同じ問題があったので、私は尋ねおいたす。 しかし、先週以来、私たちはもう問題を抱えおいたせん。 それは私たちの新しいりェブサむトをリリヌスするのは偶然ですか、それずもiOSアップデヌトですか

タむムアりト゜リュヌションの実装のタむムラむンはありたすか

ETAを提䟛するこずはできたせん。

@GeekPress Devツヌルが提䟛するモバむルりィンドりサむズを䜿甚しおChromeでサむトを衚瀺するずこの機胜の正匏な名前はありたすかおそらくモバむルプレビュヌですか、2本の指でスクロヌルしおも分析を含む遅延スクリプトがトリガヌされるこずはありたせん。 たた、このスレッドでのダブルクリックの問題に぀いお、どのペヌゞずリンクをテストしたしたか トップペヌゞ

@GeekPress Devツヌルが提䟛するモバむルりィンドりサむズを䜿甚しおChromeでサむトを衚瀺するずこの機胜の正匏な名前はありたすかおそらくモバむルプレビュヌですか、2本の指でスクロヌルしおも分析を含む遅延スクリプトがトリガヌされるこずはありたせん。 たた、このスレッドでのダブルクリックの問題に぀いお、どのペヌゞずリンクをテストしたしたか トップペヌゞ

Chromeデベロッパヌツヌルでモバむルプレビュヌを䜿甚しおテストしおも、タッチゞェスチャが異なるため、iOSデバむスで実際にテストした堎合ず同じ結果が埗られるずは思いたせん。

@Roboonlそうです、違うはずです。 そしお、私はそうしおいたせん。 WP Rocketにずっお、特定の条件䞋でスクリプトがロヌドされないこずは問題ないのではないかず思いたす。

setTimeOutが必芁であるか、むしろ必芁です。

関連 https 

関連するケヌス https 

ブラりザSafariずchrome
デバむスiPhone 11 Pro

タむムアりトトリガヌを远加するず、 https//github.com/wp-media/wp-rocket/issues/3420も解決され

タむムアりトトリガヌを远加するず、3420も解決されたす

@ piotrbak 3420がこの問題に関連しおいるかどうかは

@GeekPress私の理解では、ナヌザヌはWebペヌゞをスクロヌルしおいお、

https://github.com/wp-media/wp-rocket/issues/3454に぀いおは正しいようですが、これはモバむルにも関連しおいたす。 おそらく、これらの問題のいずれかがhttps://github.com/wp-media/wp-rocket/issues/3420を解決するでしょう
ありがずう

すべおのアップデヌト

@arunbasillal WP-rocketにオプションを远加しお、その間に特定のペヌゞで陀倖するこずはできたせんか
Flying Scriptsず同様に、キヌワヌドを含む特定のペヌゞのDelayJSを陀倖するオプションもありたす。

Chromeデベロッパヌツヌルでモバむルプレビュヌを䜿甚しおテストしおも、タッチゞェスチャが異なるため、iOSデバむスで実際にテストした堎合ず同じ結果が埗られるずは思いたせん。

@Roboonl実際のモバむルデバむスでテストされおいたす。 モバむルで圓瀟のりェブサむトをお詊しください。2回クリックする必芁はありたせん。

@roberthedlund䜕かを芋逃しおいたはずですが、

Chromeデベロッパヌツヌルでモバむルプレビュヌを䜿甚しおテストしおも、タッチゞェスチャが異なるため、iOSデバむスで実際にテストした堎合ず同じ結果が埗られるずは思いたせん。

@Roboonl実際のモバむルデバむスでテストされおいたす。 モバむルで圓瀟のりェブサむトをお詊しください。2回クリックする必芁はありたせん。

@roberthedlund䜕かを芋逃しおいたはずですが、

https://ibb.co/qYVyhh6

@roberthedlundええず、あなたはすでにWPロケットでもそれを行うこずができたす。 ペヌゞ線集画面に移動し、«WPロケットオプション»メタボックスを開いお、JS実行の遅延オプションをオフにするだけです。

@roberthedlundええず、あなたはすでにWPロケットでもそれを行うこずができたす。 ペヌゞ線集画面に移動し、«WPロケットオプション»メタボックスを開いお、JS実行の遅延オプションをオフにするだけです。

ええ、しかし䟋ずしお100ペヌゞ以䞊で手動でそれを行うのは理想的ではありたせん。

すべおのアップデヌト

この問題は、Android䞊のChromeを搭茉したバヌゞョン3.8.6でも匕き続き発生したす。 Fying Scriptsを詊したずころ、このダブルクリックのバグは発生したせんでした。 iOSの堎合、フラむングスクリプトを䜿甚しおいる堎合でも、芖聎者はダブルクリックする必芁がありたす。

すべおのアップデヌト あなたがただWP-rocketのナヌザヌに問題に぀いお䜕も知らせおいないのは奇劙だず思いたす。 人々が遅延JS機胜をアクティブにする前に譊告通知を入力するこずはどれほど難しいですか 私が問題に぀いお連絡する前に、問題に苊しんでいるこずをただ知らないさたざたなフォヌラムで非垞に倚くのナヌザヌを芋おきたした。 これはかなり倧きな問題であり、譊告する必芁があるず思いたす。

@socialpreneur iOSの堎合、シミュレヌションではなく、実際のモバむルで詊しおいたすか

なぜ私は質問をしおいるのですか

私は自分のiPhone8でもう䞀床やり盎したしたが、自分のWebサむトを含むDelayJSが含たれおいるすべおのWebサむトを2回クリックする必芁はありたせん。

@GeekPress私ず私のクラむアントの電話を含む実際のモバむルでは、

远加この問題の原因ずなっおいる倖郚たたは内郚のスクリプトがあるようです。 WPRocketのDelayJSやFlyingScriptsを䜿甚しおいるすべおのサむトにこのダブルクリックの症状があるわけではありたせん。 これたでのずころ、この問題がない2぀のサむトはAdSenseを䜿甚しおいたせん。 どちらが原因かを解明するために、さらに倚くのケヌスを収集する必芁があるず思いたす。

@GeekPress

@socialpreneur iOSの堎合、シミュレヌションではなく、実際のモバむルで詊しおいたすか

なぜ私は質問をしおいるのですか

私は自分のiPhone8でもう䞀床やり盎したしたが、自分のWebサむトを含むDelayJSが含たれおいるすべおのWebサむトを2回クリックする必芁はありたせん。

私はDelayJSを䜿甚しおいる倚くのりェブサむトを詊し、実際の電話を詊したした。 iPhone 8、iPhone SE、iPhone11およびそれらすべおにこの問題がありたした。 最初の「クリック」で機胜する堎合もあれば、完党に機胜しなくなる堎合もありたす。 したがっお、問題は珟実のものです。

@socialpreneur私たちのりェブサむトhttps://wp-rocket.meで詊したしたか 私が蚀ったように、私はいく぀かのりェブサむトを詊した埌、問題を再珟するこずができたせん。

䜿甚しおいるiOSのバヌゞョンを教えおください。

@GeekPressあなたが芋るすべおが真実であるずいうわけではありたせん。 少なくずも1人のWPRocketナヌザヌが問題を抱えおいる堎合は、問題を解決するためにあらゆるこずを行う必芁がありたす。 私のiOSは14.4です。クラむアントにiOSバヌゞョンを尋ねたす。 私が蚀ったように、これは特定のスクリプトを䜿甚する特定のサむトのすべおのDelay JSプラグむンWP Rocket、Flying Scripts、Perfmattersで発生しおいるため、これはあなたの原因だけではありたせん。

ブラりザかもしれたせんが、このダブルクリックの問題を芋るず、iOSだけでなく、AndroidずChromeにもあるので、明らかにiOSずSafariの問題だけではありたせん。 特定のサむトでこの問題を回避するために、ちょっずしたハックや远加のfunctions.phpを考え出すこずができれば幞いです。

䜕か芋぀けたらお知らせしたす。

远加1OK、問題が発生しおいる3番目のサむトです。 たぶん私はいく぀かの䞀般的なスクリプトを絞り蟌むこずができたす。

远加2これたでのずころ、DelayJSを有効にするだけではこの問題は発生したせん。
delayjs

しかし、いく぀かのスクリプトを蚭定するず、ダブルクリック/タップが発生し始めたす。
delayjs2

远加3わかりたした。これが私が芋぀けたものです。 「目次」を远加するず、ダブルクリックがトリガヌされたす。 これを報告しおいる他のすべおのナヌザヌにずっお同じではないかもしれたせんが、これたでのずころ、これはキヌワヌドの1぀です。 目次Plusはプラグむン名です。

远加4ここに良いニュヌスがありたす。 同じ問題を抱えおいる別のサむトもTOCPlusを䜿甚しおいたす。 @GeekPress 、このプラグむンを有効にしおテストしおください。 たた、すべおのサポヌトスタッフに、同じ問題を抱えおいるナヌザヌが自分のサむトでもこのプラグむンを䜿甚しおいるかどうかを確認するように䌝えたす。 できるだけ速くに。

远加5TOC Plusスクリプトを遅らせないこずで、サむトの1぀でこの問題を解決するこずができたした。 しかし、同じ゜リュヌションが別のサむトでは機胜しなかったため、遅延に察応しおいないスクリプトがいく぀かあるようです。

远加6jqueryバヌゞョンがこの問題の䞀郚を担っおいる可胜性があるず感じおいたす。 䞀方の䜜業サむトは最新バヌゞョンを䜿甚し、もう䞀方の非䜜業サむトは叀いバヌゞョン/wp-includes/js/jquery/jquery.js?ver=1.12.4-wpを䜿甚したす。 さらにデバッグ...

@GeekPress TOC Plusの他に、

  • googlesyndication
  • adsbygoogle
  • adsbygoogle.js

再珟するには

  1. スクロヌルせずに芋える範囲内かどうかにかかわらず、AdSenseを䜿甚しおテストサむトを構築したす。
  2. ペヌゞを曎新し、ヘッダヌのロゎ/テキストたたはモバむルメニュヌアむコンをタップしたす。 この時点でAdSenseが読み蟌たれたすが、ワンタップでメニュヌを開くこずはできたせん。

解決

これはAdS​​enseスクリプトがどのように蚭蚈されおいるように芋えるので、私にはわかりたせん。 かなりの回避策は次のずおりです。

  1. 垞に1秒埌にAdSenseをロヌドしたす。 したがっお、ほずんどのナヌザヌはこの問題に盎面したせん。
  2. マりスホバヌにAdSenseをプリロヌドしたすこれがモバむルタップで機胜するかどうかはわかりたせん
  3. ナヌザヌにAdSenseで収益化しないように䌝えおください。そうすれば、サむトははるかに速くなりたす...

@GeekPress私のりェブサむトはcelmetro.comで、遅延Javascript実行を有効にするず、同じダブルクリックの問題が発生したす。リストに遅延するスクリプトがないかどうかは関係ありたせん。

関連 https 
圌らはTOCプラスずアドセンスを䜿甚しおいたす。
線集これは、圱響を受けるサむトでの画面蚘録に関する@socialpreneurからの远加情報です。

Chromeモバむルを介しおおよびChromeデスクトップを介しおWeb開発ツヌルをモバむルずしおロヌドするように蚭定しお自分のWebサむトで問題を確認できたす

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡