2011-11-21 2 views
0

제목에 모두 표시됩니다. 내가 아는 유일한 것은 src 속성의 일부인 iframe으로 작업하고 있습니다. 내가 jQuery를 변수 b에 원하는 앵커 요소가이 시점에서동적으로로드 된 iframe 내부에서 버튼을 클릭하는 방법

var f = $('iframe[src^="url"]', newTabBrowser.contentDocument); 
if (! f.length) 
    return; 
var b = f.contents().find('#button'); 
if (! b.length) 
    return; 

을,하지만 난 그것을 클릭 할 수 없습니다 : 지금까지 나는 그들의 (알려진) ID로 대상 요소 (앵커)에 도달 할 수 있습니다. 앵커는 다음과 같이이다 : 나는 시도

<a href="javascript:void(0);" id="button" role="button" tabindex="0"></a> 

:

b.click(); 

과 : 두 작품의

simulateClick(b); 

function simulateClick(elm) { 
    var evt = document.createEvent("MouseEvents"); 
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); 
    var canceled = !elm.dispatchEvent(evt); 
    if(canceled) { 
     return false; 
    } else { 
     return true; 
    } 
} 

없음. 진행 방법이나 시도 할 다른 기술에 대한 아이디어?

OBS : 이것은 FF 애드온의 일부입니다.

 
$(document).ready(function() { 
      var frame = $('#iframeID').get(0).contentDocument; 
      $('#button', frame).click(function() { 
       alert("Clicked me..!"); 
      }); 

     }); 

그것이 어떤 의미에서 도움이되기를 바랍니다 : 나는 newTabBrowser.contentDocument

답변

0

당신을 위해이 일을합니까 사용하는 이유입니다.

+0

코드는 클릭 이벤트를 바인딩하고, 나는 클릭 이벤트를 트리거합니다. '$ ('# button', frame) .click()'이어야합니다. 어쨌든 내 문제는 [http://en.wikipedia.org/wiki/Same_origin_policy] (동일 출처 정책)를 위반하는 도메인 간 제한으로 인한 것입니다. 따라서 귀하의 기부금은 좋으며 나는 그 사실을 받아들입니다 ... –

관련 문제