2

これを理解するためにあらゆることを試しましたが、ウェブページ内の JavaScript の一部を追跡できません

そのため、私の問題はこのシナリオだけに関連していませんが、状況を説明するだけです。それははるかに大きなスペクトルに依存します。

とにかく、私はsugarCRMで開発しており、カレンダーモジュールのスロットのデフォルトのオンクリック動作を編集しようとしています(これを理解する必要はありませんので、読み続けてください)。スロットをクリックすると、モーダル ダイアログ ウィンドウが開き、会議や通話を記録できます。

だから私はこの背後にあるJavaScriptを追跡しました。私はfirebugとchromeを使用しましたが、どちらも特定のWebページで使用されているすべてのJSファイルのリストを提供します。たとえば、「SUGAR.collection」を検索すると、firebugは「sugar_field_grp.js? v=FVh1Z-v5nA6bYov7-aFFqQ" このコードは sugar_field_grp.js にありますが、変更しようとしているコードは "index.php?module=Calendar&action=index&parentTab=Activities" にあります。変更したいJavaScriptを含むファイル。

また、ページのソースを右クリックして、スクリプト タグ内のコードを確認することもできます。したがって、このコードの一部がJSファイルに存在しないことを考えると、変更できません。実行時に生成されます(と思います)が、何らかのソースが必要です。sugarCRMにこのコードを生成するように指示するファイルが必要です

tl;dr pagesource に存在する JavaScript コードの一部を追跡する方法と、firebug または chrome によって指定された JS ファイルがありません。index.php を保存します (このファイルにはその JavaScript もありません)。

読んでくれてありがとう

4

2 に答える 2

4

マシン上のディスク上のファイルで文字列を検索する方法を学びます。

Linux、MacOS、およびほとんどの unixen では、このための頼りになるツールはgrep. これは、使用するすべてのプログラミング言語に適用されます。あなたの場合cdは、ソースコードのディレクトリに移動して、次のようにします。

grep -r SUGAR.collection .

ソース管理ツールとして git を使用している場合git grepは、はるかに高速です。

Windows には、ファイル内のテキストを検索するために使用できるさまざまな GUI ツールがあります。グーグルで検索してください: grep for windows.

IDE を使用している場合は、IDE のファイル内検索機能のみを使用します。

于 2013-11-07T08:40:17.190 に答える
0

Chrome / Webkit を使用して特定のコードを追跡するには、次の 2 つの手順を実行します。

クライアント:

1.すべての静的テキスト ソースを検索する

  • CTRL+ SHIFT+を使用して開発パネルを開きますI
  • + CTRL+をSHIFT押すFと、グローバル検索ダイアログがポップアップします
  • そのすぐ隣で、JS コードのきれいな印刷を on: ボタンに設定できます。{ }
  • 正規表現を使用して検索用語を入力します
  • オプション:大文字と小文字を区別せず、検索スペースが大きく、時間がかかる検索が必要かどうかを決定します。例:

    ここに画像の説明を入力

2. 動的ユーザー DOM コンテンツを検索する

  • タブ 'Elements' ヒットCTRL+ に移動しFます。
  • 検索語を入力します (これにより、親 DOM 内の iframe、svg なども検索されます)

3. 推奨:

  • ステップ 1 とステップ 2 の結果を相互参照します。
  • 特定の文字列が DOM と静的ソースの両方に存在する場合、そのコンテンツはクライアント側でプログラムによって作成されたものではないと見なすことができます。

サーバ:

  • 多くのプロジェクトでは、コンテンツ配信の前にメディア バンドルの手順を実行します。HTTP ラウンドトリップを節約するために、Web リソースをメイン ファイル (index.php など) にパックします。sourcemaps
    / を 使用してコードベース全体を検索し、顕著な静的文字列または静的文字列の近くにある顕著なキーワードを検索して、元のソース ファイルを見つけます。

    ファイルの検索:

    ローカルでは、私は通常、JetBrain の IDE (IDEA、PHPStorm など) と Sublime の迅速なインデックスとヒューリスティック検索を使用します。grep-command ツールは、パフォーマンスの点でここで競合することはできません。Windows では、Totalcommander とそのアーカイブ/正規表現検索機能も使用します。

    サーバー上のコードをすばやく検索する場合は、次のようなものを使用できます。

    grep -r -C10 --color=always 'keyword1|keyword2' htdocs/ | less -R

    これにより、行コンテキストも提供されます。2 つの注意点: 最初にバイナリを除外すると、スコープ外のシンボリック リンクは無視されます。

于 2013-11-07T08:25:55.813 に答える