0

これは私のhtmlコードです

<div class="class_test" id="id_test">
<h2>testing</h2>
<img/>
<div class="rightBox">
<h4>test</h4>
<p>test</p>
</div>
</div>

javascript コードで、 img を選択してsrc 、 height 、 widthを設定したい

$("#id_test > img").src = "blablabla.jpg";
$("#id_test > img").height = "100";
$("#id_test > img").width = "100";

しかし、それは機能しません

どこで見逃したのですか?

それ以外の場合、jquery を使用せずにネイティブの JavaScript コードを使用するにはどうすればよいですか

document.getElementById("blabla")

img ID を設定したくない

4

4 に答える 4

1

試す:

$("#id_test > img").attr('src',"blablabla.jpg").attr('height',"100").attr('width',"100");
于 2013-07-08T09:48:49.037 に答える
1

フィドル

jQuery :

$("#id_test > img").prop('src','http://jsfiddle.net/favicon.png');
$("#id_test > img").prop('height','100');
$("#id_test > img").prop('width','100');

JavaScript

var elm = document.getElementById('id_test');
var first = elm.getElementsByTagName("img")[0];
first.src = "http://jsfiddle.net/favicon.png";
first.style.height = '100px';
first.style.width = '100px';
于 2013-07-08T10:03:43.950 に答える
1

私はそれがうまくいくと思います:

$('#id_test').find('img').attr({ 'src': 'blablabla.jpg', 'height': 100, 'width': 100});
于 2013-07-08T09:57:28.847 に答える
0

jQueryはオブジェクトのような配列を返します..例:$("#id_test > img")次の配列を返します

[<img/>,<img />, ...] 

forそれにアクセスするには、while.. または jQueryeachメソッドを使用してそれらをループできます。

$("#id_test > img")[0] -> is Dom 

それを変更すると Dom に反映されますyour selector。セレクターが有効でない場合、1 ..jQuery Object.length0

HTML のプロパティと属性に関する質問のプロパティと属性の違いを参照してください。

var imgs =  $("#id_test > img");

// set first item ..    
if ( imgs.length > 0 ) {
    imgs[0].src = 'your src';

}

// set all items
if ( imgs.length > 0 ) {

    for ( var i= 0; i < imgs.length ; i++ ){
        imgs[i].src = 'your src'; // src is property
    } 
}

最良の方法は、 jQuery propメソッドを使用することです。src上記のコードと同じように、すべてのアイテムのプロパティを設定しfor loopます.jQueryは、さまざまなブラウザーでの作業に安全です

imgs.prop('src','your src') // or pass json params

後ろのループでは、各アイテム、...そしてプロパティを設定します

于 2013-07-08T10:10:10.917 に答える