jquery不在VS中工作,但它在jsfiddle.net中工作

时间:2014-06-11 06:49:49

标签: jquery landscape jsfiddle portrait

这是jquery

$('#pl').find('img').each(function(i, elem) {
    var $this = $(this),
    ratio = $this.width() / $this.height();

    $this.addClass((ratio < 1) ? 'portrait' : 'landscape');
});

HTML:

<div id="pl">
<img src="#" width="60" height="30" />
<img src="#" width="30" height="60" />
<img src="#" width="40" height="80" />
<img src="#" width="90" height="50" />
<img src="#" width="60" height="30" />
<img src="#" width="40" height="80" />
</div>

这里是jsfiddle.net&gt;&gt;&gt;中的示例SAMPLE

2 个答案:

答案 0 :(得分:0)

将Jquery包含在头部

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
 <script>
 $(window).load(function () {
     $('#pl').find('img').each(function (i, elem) {
         var $this = $(this),
             ratio = $this.width() / $this.height();

         $this.addClass((ratio < 1) ? 'portrait' : 'landscape');
     });
 });</script>

答案 1 :(得分:0)

我认为您错过了文档就绪功能

在html

的头部添加脚本标记
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

并且您的脚本位于文档就绪函数

$(function() {

$('#pl').find('img').each(function(i, elem) {
    var $this = $(this),
    ratio = $this.width() / $this.height();

    $this.addClass((ratio < 1) ? 'portrait' : 'landscape');
});

});