3

Jqueryを使用して変数をdivに挿入しました。私のコードを確認してください。

var msg = '<script src="https://gist.github.com/3010234.js?file=new.html.erb"></script>'
$('.result').html(msg);

msg変数には、コードスニペットをレンダリングするスクリプトが含まれています。msgは動的変数です。

上記のコードは、コードスニペットをdivに挿入するために機能していません。

何か案が?

このスクリプトは、このようなコードスニペットを生成します。

ここに画像の説明を入力してください

4

4 に答える 4

3

追加するscriptには、このように追加しheadます。

var s = document.createElement('script');
s.src = 'https://gist.github.com/3010234.js?file=new.html.erb';
s.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(s);
于 2012-07-05T06:36:36.060 に答える
1
function loadScript() {
    var script = document.createElement("script");
    script.src = "https://gist.github.com/3010234.js?file=new.html.erb";
    script.type = "text/javascript";
    document.getElementById("result").appendChild(script);
}
于 2012-07-05T06:37:17.680 に答える
1

その埋め込みコードを使用して、githubの要点を動的にページにロードすることはできません。埋め込みコードは、スクリプトタグをHTMLに追加できれば問題ありませんが、JavaScriptを介して動的に実行しようとすると、に依存しているため機能しませんdocument.write()

代わりに、github gists apiを使用してください:

$.get("https://api.github.com/gists/3010234", function(response) {
    $(".result").text(response.data.files["new.html.erb"].content);
}, "jsonp");

作業デモ: http: //jsfiddle.net/naTqe/

于 2012-07-05T06:39:12.090 に答える
0

リモートJSにバグがあるようです。私はそれをJSLintで実行し、いくつかのエラーを思いつきました。

とにかく、これが私の実例です。javascriptコンソールを開いたままにしておくと、リモートJSを解析しようとしたときにエラーが表示されます。

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <script type="text/javascript" src=
  "https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  <title>Jquery test</title>
</head>

<body>
  <h1>jQuery</h1>

  <p class="result">Some result</p>
  <script>
  /*<![CDATA[*/
  $(document).ready(function(){
  var msg = '<script type="text/javascript" src="http://gist.github.com/3010234.js?file=new.html.erb"><\/script>";
  $('.result').html(msg);
  });
  /*]]>*/
  </script>
</body>
</html>
于 2012-07-05T07:09:11.877 に答える