W naszej aplikacji analizujemy stronę internetową i ładujemy ją na inną stronę w elemencie iFrame. Wszystkie elementy na tej załadowanej stronie mają swoje identyfikatory tokenów. Muszę wybrać elementy według tych tokenid-ów. Oznacza - klikam element na stronie głównej i zaznaczam odpowiedni element na stronie w ramce iFrame. Z pomocą jQuery robię to w następujący sposób:
function selectElement(token) {
$('[tokenid=' + token + ']').addClass('border');
}
Jednak dzięki tej funkcji mogę wybierać elementy tylko na bieżącej stronie, a nie w elemencie iFrame. Czy ktoś mógłby mi powiedzieć, jak mogę wybrać elementy w załadowanym elemencie iFrame?
Dzięki.
źródło
iframe.contents()
Spójrz na ten post: http://praveenbattula.blogspot.com/2009/09/access-iframe-content-using-jquery.html
Umieść swój selektor w metodzie wyszukiwania.
Może to jednak nie być możliwe, jeśli element iframe nie pochodzi z serwera. Inne posty mówią o błędach odmowy uprawnień.
jQuery / JavaScript: dostęp do zawartości iframe
źródło
kiedy twój dokument jest gotowy, nie oznacza to, że twój iframe też jest gotowy,
więc powinieneś wysłuchać zdarzenia ładowania iframe, a następnie uzyskać dostęp do swojej zawartości:
źródło
Jeśli sprawa uzyskuje dostęp do ramki iFrame za pośrednictwem konsoli, np. Chrome Dev Tools, możesz po prostu wybrać kontekst żądań DOM za pomocą menu rozwijanego (patrz zdjęcie).
źródło
tutaj jest proste JQuery, aby to zrobić, aby umożliwić przeciąganie div tylko w kontenerze:
źródło