0

Snippet jQuerySyntaxHighlighterを使用しています。 http://steamdev.com/snippet/

テキストが最初に表示されるとき、その構文は正しく表示されます。しかし、テキストを変更すると、スクリプトが機能しません。

Javascript:

<script type="text/javascript">
  $(document).ready(function(){
    $("pre.ruby").snippet("ruby",{style:"neon"});
  })

  //This function remove all #aside child elements, recreate child #code
  //And change text inner #code
  function loadUrl(url) {
var node = dojo.byId("aside");


while (node.hasChildNodes()) {
      node.removeChild(node.lastChild);
}

var aside = document.getElementById('aside');
aside.innerHTML = "<pre id='code' class='ruby'> </pre>";


$("#code").load(url);
$("pre.ruby").snippet("ruby",{style:"neon"});

   }
 </script>

HTML:

<div id="aside">
  <pre id="code" class="ruby">
  </pre>
</div>
4

1 に答える 1

1

load()シンタックスハイライトを2回適用する前に、が完了していません。構文呼び出しをload()の完了コールバックに移動する必要があります。

$("#code").load(url, function() {
    $("pre.ruby").snippet("ruby",{style:"neon"});
});
于 2012-05-02T14:18:41.083 に答える