6

私のページには小さなコードがあります

 <script type="text/javascript">
 function doPost() {
 document.forms["form"].submit();
}  
  function Func1Delay()
{
setTimeout("doPost()", 0);
}

...。

   <body onload="Func1Delay()">

コンソールにこのエラーがあります

Uncaught TypeError:未定義のメソッド'create'を呼び出すことができません

右側は、Chrome拡張機能のMeasureItによるものです。無効にすると、スクリプトが機能します。この問題の回避策はありますか?

4

1 に答える 1

3

短い答えはイエスです。しかし、完全な答えは NO です。それは Chrome ではなく、コードに干渉する拡張機能です。例えば:

1) コンテンツ スクリプトはリスナーを追加し、stopPropagation を使用できます。この場合、コードはそのイベントを受け取りません。コンテンツ スクリプトが失敗し、他のリスナーの実行を妨げる、より具体的なシナリオを想像できます。

2) コンテンツ スクリプトは、ページの要素を台無しにする可能性があります。一部を削除し、独自のフローを追加できます。拡張機能が、あなたのものとまったく同じ名前の var または function を持つ SCRIPT 要素を追加するとどうなるでしょうか?

拡張機能のコードがどの程度「うまく」書かれているかはわかりません。

ところで、ページに干渉する Chrome の拡張機能はたくさんあります。数か月前、Chrome 用の Skype 拡張機能は、そのブラウザで Web ページとビデオの再生を妨害し、不安定にする罪で有罪判決を受けました。

于 2012-05-31T11:39:03.583 に答える