Вопрос по responsive-images, javascript, srcset –  приходящий из?

2

ImageElement имеет свойство, чтобы мы могли получить текущий источникcurrentSrc элемент. Полезно при определении нескольких возможных источников сimgКажется, нет эквивалента дляsrcset.

HTMLPictureElementЕсть ли другой способ найти источник тока.

 элемент с Javascript?picturepicture - это только контейнерный элемент, предоставляющий разные источники для элемента изображения внутри контейнера изображения - так что я бы предположил, что

Вы можете получить доступ к Colin Meinke
@CBroe, ты абсолютно прав. Спасибо! Colin Meinke
 изcurrentSrc элемент работает здесь так же ...?img@CBroe, что имеет смысл, знаете ли вы какую-либо документацию, которая объясняет это? CBroe

Ваш Ответ

2   ответа
8

 currentSrc элемент внутриimg элемент, чтобы получить примененное ображение.pictureВ демонстрации ниже (если вы работаете на рабочем столе с полноразмерным браузером)

 будетcurrentSrc образ.http://placehold.it/600x100Пятно, спасибо!

window.onload = function() {
  const picture = document.getElementById('pictureEl');
  const currentSource = document.getElementById('currentSource');
  currentSource.innerText = picture.getElementsByTagName('img')[0].currentSrc;
}
<picture id="pictureEl">
 <source srcset="http://placehold.it/600x100?text=Source" media="(min-width: 300px)">
 <img src="http://placehold.it/300x100?text=Img">
</picture>
<div id="currentSource"></div>

Используйте это, чтобы получить источник изображения. Colin Meinke
1

Где

function getCurrentSrc(element, cb){
    var getSrc;
    if(!window.HTMLPictureElement){
        if(window.respimage){
            respimage({elements: [element]});
        } else if(window.picturefill){
            picturefill({elements: [element]});
        }
        cb(element.src);
        return;
    }

    getSrc = function(){
        element.removeEventListener('load', getSrc);
        element.removeEventListener('error', getSrc);
        cb(element.currentSrc);
    };

    element.addEventListener('load', getSrc);
    element.addEventListener('error', getSrc);
    if(element.complete){
        getSrc();
    }
}
 а такжеwindow.respimage приходящий из?window.picturefillПолучить текущий источник изображения элемента изобра Colin Meinke

Похожие вопросы