1

javascript と jQuery を使用した html コードを、ID なしでクラスを使用して div に追加しようとしています。

私はそれをこのようにしようとしていますが、成功していません...

fly.js :

$(".myClassName").ready(function(){
    $(this).innerHTML = "<img src=\"http://mywebsite.com/img.png\" /> <span>some text</span>";
});

このhtmlコードで.jsファイルをロードしています

.html ファイル:

<div class="myClassName">
</div>
<script>
(function()
{
    if (window['ImportFlag'] == undefined || window['ImportFlag'] == void 0) {
        var myScript = document.createElement('script');
        myScript.type = 'text/javascript';
        myScript.src = 'file.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(myScript, s);}
    window['ImportFlag'] = 1;
})();
</script>
4

4 に答える 4

2

あなたはこのように試みるかもしれません

<div class="myClassName">
</div>
<script type="text/javascript" src="file.js">
</script>​

file.js

$(document).ready(function(){
    $('.myClassName').html("<img src=\"http://mywebsite.com/img.png\" /> <span>some text</span>");
});​
于 2012-09-24T09:58:32.897 に答える
2
$(document).ready(function(){ 
    $(".myClassName").html("<img src=\"http://mywebsite.com/img.png\" /> <span>some text</span>"); 
}); 
于 2012-09-24T09:53:16.447 に答える
0

jQueryready()関数document、要素ではなくオブジェクトで呼び出す必要があります。これはDOM対応ハンドラーを呼び出し、次の構文を使用して呼び出すことができます(公式ドキュメントから)。

$(document).ready(handler)

$().ready(handler) (これはお勧めしません)

$(handler)

Matei Mihaiとmuthuのここでの回答は、これがあなたの例でどのように機能するかを示しています。

于 2012-09-24T10:06:50.427 に答える
0

file.js をロードする前に、jQuery がロードされていることをまず確認する必要があります。次に、jQuery の関数を使用して div 内部 HTML を設定する必要があります。

これは最小限の例です:

<html>
<head></head>
<body>
<div class="myClassName">
</div>
<script type="text/javascript" src="/js/jquery-1.7.2.min.js"></script>
<script>
(function()
{
    if (window['ImportFlag'] == undefined || window['ImportFlag'] == void 0) {
        var myScript = document.createElement('script');
        myScript.type = 'text/javascript';
        myScript.src = 'file.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(myScript, s);}
    window['ImportFlag'] = 1;
})();
</script>
</body>
</html>

次に、 file.js :

$(document).ready(function(){ 
    $(".myClassName").html("... <span>some text</span>"); 
}); 
于 2012-09-24T10:04:58.590 に答える