jQuery的高度和宽度不能正常工作

时间:2012-08-10 20:07:33

标签: php jquery html codeigniter

我有一个宽度大于高度的图像,它仍然使用jQuery中的第二个if语句输出。我相信它可能与PHP扇区输出多个图像文件有关。所以我将id选择器更改为类选择器,但它不想让步。有谁知道我做错了什么?我已经在这个问题上触底了。

<?php $userid = $this->session->userdata('userid');
      $selectedId = $_REQUEST['id'];      
      $query1 = $this->db->query("SELECT * FROM userProfilePhotos p, userProfileAlbums a WHERE p.isAlbumCover = 'Yes' AND p.userid = a.userid AND a.userid = '{$selectedId}' AND a.albumId = p.albumId");
        foreach($query1->result() as $row1) {?>

    <script type="text/javascript">
    $(document).ready(function() {
    function heightOverWidth() {
        return '<div style="width: 102px; height: 136px; border-radius: 3pt; background-color: white; border: 1px solid #C1C1C1; padding: 10pt">'+
               '<img id="profileImg" alt="" height="130" src="<?=base_url().$row1->imgURI?>" width="100" />'+
               '</div><span class="link-font3"><?=$row1->albumName?></span> <span class="font1"> - <?=$row1->albumDesc?></span>';
    }
    var img = $(".profileImg");
    if (img.width() >= img.height()) {
        alert("1");
    } if (img.height() >= img.width()) {
        $("#albumList").append(heightOverWidth());
    }
    });
    </script>

<?php list($width, $height, $type, $attr) = getimagesize(base_url() . $row1->imgURI); ?>
<div id="albumList" style="padding: 10pt">
<img class="profileImg" style="display: none" alt="" height="<?=$height?>" width="<?=$width?>" src="<?=base_url().$row1->imgURI?>" />
</div>

<?php } ?>

1 个答案:

答案 0 :(得分:3)

将width()更改为attr('width')和高度相同的内容。这将读取您的宽度/高度属性,而不是尝试获取实际的宽度和高度。您的解决方案不能用作带有display的元素:none没有任何可见的尺寸。