2013-09-25 2 views
0

이미지가있는 JavaScript를 포함하여 내 블로그 편집기의 제한 사항으로 인해 내 wordpress 페이지의 onclick 처리기와 하이 슬 라이드 팝업을 분리하려고합니다.onclick 처리기에서 호출하지 않으면 Highslide 오버레이가 제대로 열리지 않습니다.

작동하는 페이지의 모든 이미지에 대해 onclick 처리기에 hs.expand를 포함 시키면 발견되었지만 최소한 하나라도 없으면 이미지가 팝업 오버레이없이 상단 모서리에 렌더링됩니다.

이 내 호출 코드

<a class="highslide" title="View 'View from Karasawa Hut' on Flickr.com" href="http://www.flickr.com/photos/colinc/6092830822" > 

<img style="float: left;" 
onclick="return show_my_pic(this,'http://farm7.staticflickr.com/6208/6092830822_1fd2545d5b.jpg','View from Karasawa Hut')" 
id="img1" alt="View from Karasawa Hut" src="http://farm7.staticflickr.com/6208/6092830822_1fd2545d5b.jpg" 
width="500" height="333" border="0" /> 
</a> 

내가 어딘가에 페이지의 다른 링크와 같은

<a title="View 'View from Karasawa Hut' on Flickr.com" 
href="http://farm7.staticflickr.com/6208/6092830822_1fd2545d5b.jpg" 
onclick="return hs.expand(this)"> 

test 

</a> 

첫 번째 링크를 포함하는 경우이 표시 기능

<script> 
function show_my_pic (thePic,theSrc,theTitle) { 
    return hs.expand(thePic, {src : theSrc}); 
} 
</script> 

입니다 내가하지 않으면 작동하지 않습니다.

정말 이상한 부분입니다. 두 번째 링크에서 onclick 처리기를 삭제하면 첫 번째 링크가 작동하지 않습니다.

자바 스크립트 하이 슬라 이드를 단계별로 실행하면 Init가 실행되는 것처럼 보이고 좌표가 제대로 생성되지 않습니다. 나는 성공하지 못한 채 많은 시간을 보냈으며 몇 가지 아이디어를 사랑할 것입니까?

콜린

답변

0

하이 라이더는 페이지가 먼저로드되어야합니다. 또한 완전히로드 된 이미지 요소로 전달해야합니다.

function init(){ 
    var img = document.getElementById('img1'); 
    show_my_pic(img, 'http://farm7.staticflickr.com/6208/6092830822_1fd2545d5b.jpg','View from Karasawa Hut'); 
} 

... 

<body onload="init()"> 
관련 문제