0

index.php メイン ページにロードされたスクリプト (syntaxhighlighter、processingjs) を再起動したいと思います。

また、.load() リクエストの反対側でスクリプトを実行したいと思います...これらのページ リクエストも .text() にヒットしているため、これはありそうにありません。これは、私が理解しているように、スクリプトを削除します。この種のことは常にスクリプト自体に依存していますか、それともページのコンパイルについて理解していないことがありますか?

繰り返しますが、既に読み込まれているスクリプトを再起動する方法を探していますが、ajax で読み込まれたコンテンツには影響しなくなりました。

4

3 に答える 3

1

確実にスクリプトを起動する唯一の方法は、ページをリロードすることです。

ページのコンパイルについて誤解していません。ブラウザーが html をレンダリングすると、<script>タグが検出されます。これらは、検出された順序で実行されます。

あなた自身が言うように、JavaScript を使用してスクリプト ブロックを削除することは可能です。これは私が数回しか聞いたことがないという点では非常に珍しいことですが (呼び出しjQuery.fn.text()は間違いなくそれを行いません)、それだけですべてを確実に再実行することは不可能です。

そうは言っても、ブラウザーがすべての要素をページにロードし終える前にコードを実行することは通常望まないため、ドキュメントの onload イベントに応答してのみすべてのコードを実行するのが一般的なパターンです。これは、設定時にコードが行っていることです$(document).ready(function(){...})または$(function(){...})(これらは両方とも同一です)。そのコードは常にドキュメントのロードされたイベントに応答して実行されるため、いつでも$(document).ready()またはで再トリガーできます$(document).trigger('ready')

ただし、多くのライブラリはイベントが 1 回だけ発生すると想定しているため、これを徹底的にテストしてください。

于 2012-04-17T15:16:17.810 に答える
0

ほとんどのライブラリには、ページのコンテンツでライブラリを「実行」する関数が付属しています。これらへの呼び出しを記述し、ある種の「初期化」関数に入れ、必要なときにこれを呼び出すだけです。

于 2012-04-17T15:08:44.573 に答える
0

ロードされたスクリプトを変更して、関数から呼び出すことができます。次に、スクリプトのコンテンツを実行するときに、この関数を呼び出します。

スクリプトを変更する方法がわからない場合は、実行中のスクリプトを調べることができるように、FireFox 用の FireBug などの開発者ツールを入手してください。

于 2012-04-17T15:19:19.693 に答える