2017-03-01 1 views
-3

このスクリプトで何が間違っているか教えてください。私はこのページでそれを見つけたhttps://jsfiddle.net/iRbouh/9po7dtg4/しかし、私のウェブサイトでは動作しません。json-ldアプリケーションにjavascript変数を含める

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 


<script id="myJSONID" type="application/ld+json"></script> 

<script type="text/javascript"> 
window.onload=function(){ 
var myList = []; 

function buildMyList() { 
    return ["2 items", "3items", "so on"]; 
} 

$("#myJSONID").text(function() { 
    return JSON.stringify({ 
     "@context": "http://schema.org/", 
     "@type": "Recipe", 
     "recipeIngredient": buildMyList() 
    }); 
}); 

} 

</script> 

テストページは、(あなたがソースを表示しなければならない)、ここで

http://www.al-hamdoulillah.com/horaires-prieres/test.html 

結果は次のようになります。

<script id="myJSONID" type="application/ld+json"> 

{"@context":"http://schema.org/", 
"@type":"Recipe", 
"recipeIngredient":["2 items","3items","so on"] 

}</script> 

しかし、ページがロードされたとき、myJSONIDがまだ空であります:

<script id="myJSONID" type="application/ld+json"></script> 

これはスクリーンショットですコンソールに結果F:

See the screenshot

+1

あなたのウェブサイトで動作します。あなたはそれがそうではないと思いますか? –

+0

投稿を編集して必要なものを表示します。 –

+0

はい、以前見たときにあなたのテストウェブサイトにあった。なぜあなたはそれがそこにないと思うのか分かりません。 –

答えて

1

JavaScriptでDOMは、ページのソースコードを変更しません変更。これはメモリ内のDOMのみを変更します。

DOMインスペクタツール(Chromeの開発ツールの[要素]パネルなど)でページを検査すると、コードがDOMを正常に変更することがわかります。

ソースを表示しても変化は見られませんが、これは予想される動作です。

関連する問題