2017-01-11 6 views
1

div 또는 실제로 iframe을 클릭하고 싶습니다. iframe을 클릭하면 해당 iframe의 내용을 다른 iframe으로 가져오고 싶습니다. 나는이 같은 그것을 시도하지만 iframe을 위해 .. 나를 위해클릭 한 번으로 div에서 innerHTML을 가져 오는 방법

var leser = document.getElementById("leser"); 
    var leser2 = document.getElementById("leser2"); 
    var leser1 = document.getElementById("leser1"); 

    leser.addEventListener("click", activateLeser); 

     function activateLeser() { 

     leser1.innerHTML = leser.innerHtmL; 

    } 

HTML 코드를 작동하지 않습니다

<div id="leser1"> 
<iframe src="https://opskins.com/?loc=good_deals&sort=n&app=433850_1"></iframe> 

<div id="leser"> 
<iframe src="https://opskins.com/?loc=shop_view_item&item=69274922&uid=76561198258576267"></iframe> 

<div id="leser2"> 
<iframe src="https://opskins.com/?loc=shop_search&sort=lh&app=433850_1&search_item=%22Skin:%20All%20American%20Face%20Bandana%22"></iframe> 

,536,913을 63,210
+0

유사하다 (activateLeser() "를 클릭") 당신은'어떻게해야합니까;'? –

+3

자바 스크립트는 대소 문자를 구분합니다. .innerHTML! = .innerHtmL. – nickles80

+0

아마도 올바른 요소를 클릭하거나 듣지 않을 것입니까? 'evt.target'과'evt.currentTarget'의 값에'console.log()'를 사용하십시오. 여기서'evt'는 이벤트 리스너 함수의 첫 번째 매개 변수입니다 (정의해야합니다). 그들이 기대하는 바가 맞는지 확인하십시오. –

답변

1

변경

leser1.innerHTML = leser.innerHtmL; 

leser1.src = leser.src; 

에 변경된 iframe을 대신 클릭 하나에서 내용을 복사 처음부터 다시로드,하지만 작동합니다.

1

문제는 div가 이벤트를 호출하는 것이므로 Iframe 콘텐츠를 다른 페이지에서 가져온 것이므로 Iframe을 클릭하면 이벤트가 등록되지 않습니다. 당신이 그런 식으로 일을 구부리면 내가 버튼을 사용하거나 iframe 요소와 사업부하지만 사이에 공간을 허용하는 것이 좋습니다,이

// 당신은 iframe 창에 ID를 추가하려고

// Iframe 창에 클릭 이벤트 추가

iframe.contentWindow.addEventListener ("click", function (event) {activateLeser (this.id);});

제대로 작동합니다. 희망이 도움이

ps. 또한 스택 오버플로에 대해 이러한 질문을 해결하십시오. 그들은 당신 Adding click event handler to iframe

capture click on div surrounding an iframe

+0

내가 어떻게하는지 더 자세히 설명 할 수 있습니까? 고맙습니다! –