Jquery перебирает html-элементы в iframe

#javascript #jquery #html #iframe

#javascript #jquery #HTML #iframe

Вопрос:

В настоящее время я переработал некоторый код и зациклился на использовании jquery. Раньше я использовал each() цикл jquery и перебирал элементы dom, подобные этому:

 $.each($('[id*="cnv"]'), function (index, value) { /*do work*/ } 
  

и это позволит выбрать каждый элемент, который содержит идентификатор cnv . Теперь я переместил код, и мне нужно выполнить итерацию по этим элементам, но извне iframe, в котором они находятся. Я получаю доступ к этим элементам в разных местах, используя javascript следующим образом

 var canvasObj = window.frames['iframe'].contentDocument.getElementById(canvasId);
  

(примечание: iframe это идентификатор / имя моего iframe), но я не уверен, как объединить эти два оператора, чтобы я мог перебирать элементы с соответствующими идентификаторами от родительского элемента.

Ответ №1:

Вы бы использовали contents()

 $("#iFrameId").contents().find('[id*="cnv"]').each(...)
  

Ответ №2:

Используя jQuery, вы можете использовать contents() для доступа внутри iframe

 //assuming iframe has loaded
$('#iframe').contents().find('[id*="cnv"]').doSomething()