제이쿼리 관련 해서 여쭤볼게요 ㅠㅠ
본문
너무 답답해 질문글 남겨볼게요
제가 운영하는 사이트에 노출되는 배너중에 이미지를 끌어오지 못하는 곳은
display: none으로 처리되게 되어있습니다
그래서 display: none으로 처리되어있으면 다음 형제 개체를
display : block 처리를해서 대체 이미지가 나오도록 하려합니다
그런데 id로 지정하는게 불가능한 부분이여서
배너에 디스플레이 값으로 지정하여 대체이미지가 나오는 형제 개체의 css값을 수정하려하는데
초보라서 머리만 너무아프고 앞으로 진전이 안됩니다 ㅠ...
혹시 도와주실수있을까요 ?
<a class="reveiw_imgs" href="{$link_product_detail}">
<img src="/file_data/seoulshowroom/{$real_filename}" onerror="this.style.display='none'" alt="배너" />
<div style="display: none" >{$product_img}</div>
</a>
원래는 이미지에다 클래스를 지정해서
function mainReview() {
var disPlay = $('.reveiw_imgs').css("display");
if ( disPlay = "none" ){
$('.reveiw_imgs').next().css("display","block")
} else {
$('.reveiw_imgs').next().css("display","none")
}
}
이런식으로 하려했는데 전체가 다 안보여지더라구요 .. ㅠㅠ
답변 3
https://stackoverflow.com/questions/9815762/detect-when-an-image-fails-to-load-in-javascript
이미지를 첫째부터 loop 돌며
url에 있는 testImsge를 실행해서
각 css display 값을 지정하면 될 듯합니다
차라리 이렇게 하지 마시고 이미지 파일이 존재여부를 체크해서 display 처리하시는게 좋지 않을까 생각됩니다.
if ( disPlay = "none" ){ <---- 등호가 맞나요? 비교는 등호 두개 ==
그보다 아래처럼 해보세요
onerror="this.style.display='none'; $(this).parent().next().show();"
next에 해당하는 것은 처음부터 설정을 display none으로 해야겠죠