Для поиска текста внутри iframe в JavaScript вы можете использовать различные методы. Вот несколько подходов:
- Доступ к содержимому окна iframe. Доступ к содержимому окна iframe можно получить с помощью свойства
contentWindow
. Получив доступ к объекту окна, вы можете выполнить поиск нужного текста, используя стандартные методы JavaScript, такие какquerySelector
илиgetElementById
.
var iframe = document.getElementById('myIframe');
var iframeWindow = iframe.contentWindow;
var iframeDocument = iframeWindow.document;
var elements = iframeDocument.querySelectorAll('body');
// Perform text search within the elements
- Использование postMessage: если содержимое iframe размещено в другом домене, вы можете столкнуться с ограничениями безопасности между источниками. В таких случаях вы можете использовать метод
postMessage
для связи с iframe и получения его содержимого. У iframe должен быть прослушиватель для получения сообщения и отправки желаемого текста.
// Parent window
var iframe = document.getElementById('myIframe');
iframe.contentWindow.postMessage('get-text', '*');
// IFrame window
window.addEventListener('message', function (event) {
if (event.data === 'get-text') {
var text = document.body.innerText;
event.source.postMessage(text, event.origin);
}
});
- Использование атрибута srcdoc iframe. Если содержимое iframe определено в строке с помощью атрибута
srcdoc
, вы можете получить к нему прямой доступ с помощью свойстваsrcdoc
и выполнить операции текстового поиска.
var iframe = document.getElementById('myIframe');
var iframeContent = iframe.srcdoc;
// Perform text search within the iframeContent
Это всего лишь несколько способов поиска текста внутри iframe с помощью JavaScript. Не забудьте настроить код в соответствии с вашим конкретным вариантом использования.