получить ширину изображения из тега href вместо тега img - PullRequest
0 голосов
/ 10 февраля 2012

Я работаю над проектом, в котором мне требуется ширина изображения от href, когда я нажимаю на конкретное изображение ширины, если изображение отображается в предупреждении.

ниже приведены href и изображениекод, который я использую

    <li>
      <a href="<?php echo $pic;?>?id=<?php echo $id;?>&pic=<?php echo $picID;?>" data-title="" data-desc=" " data-rel="group2" data-bw="<?php echo $pic;?>"  class="lightbox" id="plzx" >
      <img src="<?php echo $pic;?>"  width="160" height="160" title="Click To View"/></a>                       
    </li>

всякий раз, когда я пытаюсь получить ширину изображения, ширина изображения берется из тега img, а не из href.в качестве ширины тега img уже определено «160».Есть ли способ получить ширину изображения из <a href

Я использую следующий код, который не работает

   $('a').click(function() {
       var image = $("<img />").attr("src", $(".lightbox").attr("href"));
       $(document).append(image);
       alert(image.height());
       alert(image.width());
       image.remove();
    });

HTML-код

       <li>
                    <a href="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg?id=3&pic=101" data-title="" data-desc=" " data-rel="group2" data-bw="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg"  class="lightbox" id="plzx" >

                    <img src="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg"  width="160" height="160" title="Click To View"/></a>

    </li>           

1 Ответ

3 голосов
/ 10 февраля 2012

На основе чего-то вроде:

<a href="/path/to/big.jpg"><img src="/path/to/small.jpg"></a>

Это должно сделать это:

$('a').click(function() {
    $(new Image()).load(function() {
        alert(this.width); // image width
        alert(this.height); // image height
    }).attr('src', this.href);
});

Обновление : если вам нужно продолжить вашу программу, используя ширину /высота, попробуйте:

var width,height;
$('a').click(function() {
    $(new Image()).load(function() {
        width = this.width;
        height = this.height,
        onLoaded();
    }).attr('src', this.href);
});
function onLoaded() {
    alert(width);
    alert(height);
    // continue...
}

Вам не нужно добавлять временное изображение в документ, но вам нужно добавить прослушиватель загрузки перед извлечением ширины / высоты.

Помните, что расширение AdBlock может повлиять на результаты извлечения в webkit, поэтому, пожалуйста, отключите его при отладке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...