jQuery 그림 불 러 오기 실패
중점 이 왔 습 니 다:error 사건 이 거품 이 나 지 않 는 다 는 것 을 기억 하 세 요.
관련 지식 포인트:jquery ready 방법,$("img").error(),img 의 complete 속성,플러그 인 imagesLoaded,이벤트 의뢰,이벤트 캡 처 및 이미지 미리 불 러 오 는 방법 등
1.그림 불 러 오 는 데 실 패 했 습 니 다.기본 그림 으로 바 꾸 기
1.1 그림 바 인 딩 error 이벤트
그림 불 러 오 는 데 실 패 했 을 때 error 이벤트 가 발생 합 니 다.
$("img").on("error", function () {
$(this).attr("src", "../img/img.jpg");
});
그림 불 러 오 는 데 실 패 했 을 때 complete 속성 값 은 false 이 고,불 러 오 는 데 성 공 했 을 때 true 입 니 다.
$("img").each(function () {
if (!this.complete || (typeof this.naturalWidth == "undefined" && this.naturalWidth == 0) || !this.src) {
$(this).attr("src", "../img/img.jpg");
}
});
document.addEventListener("error", function (e) {
var elem = e.target;
if (elem.tagName.toLowerCase() == 'img') {
elem.src = "../img/img.jpg";
}
}, true);
동적 으로 생 성 된 img 라벨 을 들 을 수 있 습 니 다.1.4 플러그 인 images Loaded 가 제공 하 는 방법 으로 처리 합 니 다.
imagesLoaded 는 주로 핸드폰 끝 폭포 흐름 방식 으로 그림 을 불 러 오 는 데 사용 되 며,그림 불 러 오 는 실 패 를 기본 그림 으로 바 꿀 수도 있 습 니 다.
// jQuery deferred
$('img').imagesLoaded()
.always(function (instance) { // always , ( )
console.log('all images loaded');
})
.done(function (instance) { // done ,
console.log('all images successfully loaded');
})
.fail(function (instance) { // fail , ,
console.log('all images loaded, at least one is broken');
})
.progress(function (instance, image) { // progress ,
var result = image.isLoaded ? 'loaded' : 'broken'; //
image.img.src = image.isLoaded ? image.img.src : "../img/img.jpg";
console.log('image is ' + result + ' for ' + image.img.src);
});
동적 으로 추 가 된 그림 이 라면,다시 판단 해 야 합 니까?2.그림 미리 불 러 오 는 방법
// , ,
function preloadimages(arr) {
var newimages = [];
var arr = (typeof arr != "object") ? [arr] : arr; //
for (var i = 0,len = arr.length; i < len; i++) {
newimages[i] = new Image();
newimages[i].src = arr[i];
}
}
총결산위 에서 말 한 것 은 소 편 이 소개 한 jQuery 그림 로드 실패 로 기본 그림 을 교체 하 는 방법 을 모 은 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
jQuery 전후 예이 기사에서는 jquery after() 및 before() 메소드의 예를 볼 것입니다. before() 메서드는 선택한 요소 앞에 지정된 콘텐츠를 삽입합니다. after() 메서드는 선택한 요소 뒤에 지정된 콘텐츠...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.