chcę wykryć kliknij INSIDE iframe nie onclick na elemencie iframe próbowałem zdarzenie onclick musisz kliknąć na iframe by wywołać funkcję, a nawet wypróbowałem addeventlistener do okna lub dokumentu nic nie działa tak, jakby iframe nie było tam funkcja nigdy Triger po kliknięciu wewnątrz iframe :(plzwykryj kliknięcie wewnątrz iframe
Odpowiedz
Ze względów bezpieczeństwa, jesteś nie powinien być w stanie śledzić działania w IFRAME, że idzie do innej strony internetowej. Jeśli masz IFRAME na swoje własna strona, która trafia na inną stronę we własnej witrynie, następnie rozwiązuje to poprzez dodanie śledzenia kliknięć bezpośrednio w kodzie, który uruchamia IFRAME:
Jeśli jest to niemożliwe, możesz rozważyć uruchomienie własnego dostosowanego serwera proxy dla IFRAME: ed webserver, dzięki czemu będziesz mógł ponownie dodawać własne śledzenie kliknięć. Zobacz Mousehole by _why dla przykładów kodu.
Możesz umieścić przezroczysty DIV na IFRAME.
Rozmiar tego DIV jest taki sam lub większy niż IFRAME.
I z wyższą właściwością CSS z-index.
Następnie, po kliknięciu na IFRAME, DIV odbiera zdarzenie.
Ale ponieważ świat nie jest idealny, straciłeś możliwość klikania wewnątrz IFRAME.
Jeśli ktoś zrobił to i przechwycił kliknięcie div, czy byłby jakiś sposób aby go przesłać (tak naprawdę symulowałaby kliknięcie tej samej lokalizacji w podstawowym elemencie iframe ...)? – Benj
Element div nie odbiera zdarzenia kliknięcia w tym przypadku. Wykrywanie kliknięć nie jest możliwe nad lub w elemencie iframe, jeśli zawartość pochodzi z innej domeny. – Andy
Działa tylko na iframe w tej samej domenie:
$('body', $('select-your-iframe-here').contents()).click(function(event) {
console.log('Clicked! ' + event.pageX + ' - ' + event.pageY);
});
Rozwiązanie dla wielu domen i crossbrowser: http://stackoverflow.com/a/32138108/1064513 –
Spróbuj
$(window).click(function(e){
$('#result').text('Clicked inside document');
});
$(window).blur(function(e){
$('#result').text('Clicked out of the window or on the iframe');
});
testu http://jsfiddle.net/4vBRe/
do wykrycia tylko kliknięcie na iframe następnie użyć zdarzenia mouseover następnie rozmycie
To działa ...Przypuszczam, że nie w każdej sytuacji, ale to przydatna sztuczka. – byronyasgur
Przeglądarki internetowe nie umożliwiają dostępu do zawartości elementu iframe ze względów bezpieczeństwa (z wyjątkiem sytuacji, gdy element iframe znajduje się w tej samej domenie, co strona nadrzędna).
Ale istnieje obejście, używając zdarzenia rozmycia, które jest uruchamiane po kliknięciu elementu iframe (ponieważ podczas gdy element iframe uzyskuje fokus, strona nadrzędna go traci).
Napisałem wtyczkę jQuery, która wykorzystuje tę wskazówkę do wykrywania kliknięć na elemencie iframe, jest dostępna tutaj: https://github.com/finalclap/iframeTracker-jquery. Możesz przeczytać samouczek pod numerem http://www.finalclap.com/tuto/track-iframe-click-jquery-87/ (w języku francuskim).
Aby go użyć, po prostu trzeba dopasować element (y) iframe chcesz śledzić, dostarczając funkcji zwrotnej:
jQuery(document).ready(function($){
$('.iframe_wrap iframe').iframeTracker({
blurCallback: function(){
// Do something when iframe is clicked (like firing an XHR request)
}
});
});
- 1. wyzwalające jedno kliknięcie wewnątrz iframe
- 2. Wykryj kliknięcie elementu zewnętrznego?
- 3. Wykryj przekierowanie w iFrame
- 4. Wykryj kliknięcie poza elementem kątowym
- 5. Wykryj kliknięcie poza div przy użyciu javascript
- 6. Wykryj zmiany orientacji w elemencie iframe
- 7. jQuery, wybierz element wewnątrz iframe, który jest wewnątrz iframe
- 8. Wykryj kliknięcie na RecyclerView poza pozycjami
- 9. JavaScript: Wykrywanie kliknięcia linku wewnątrz ramki iframe
- 10. Jak zamknąć iframe od wewnątrz iframe?
- 11. Dopasowywanie iframe wewnątrz div
- 12. Jquery wewnątrz Iframe
- 13. jQuery, aby wywołać kliknięcie elementu iframe?
- 14. Wykryj obiekt DOMContentLoaded w elemencie iframe
- 15. Złap javascript: window.close() wewnątrz iframe
- 16. Wykryj kliknięcie wewnątrz/na zewnątrz elementu za pomocą pojedynczej procedury obsługi zdarzenia
- 17. Wykryj, kiedy element iframe zacznie ładować nowy adres URL.
- 18. Wywołanie funkcji wewnątrz elementu iframe spoza ramki iframe
- 19. zasymulować kliknięcie przycisku wewnątrz aplikacji (VB.NET)
- 20. Wykryj wewnątrz przeglądarki Android lub WebView
- 21. Wykryj, czy użytkownik kliknie wewnątrz kręgu
- 22. Symuluj kliknięcie myszy/wykryj kolor pod kursorem w Pythonie
- 23. jQuery: Wykryj kliknięcie myszą i otwórz cel w nowej karcie
- 24. Google Maps wewnątrz iframe nie ładowanie
- 25. Close Bootstrap modalne od wewnątrz iframe
- 26. Jak odebrać wewnątrz elementu iframe używając document.getElementById
- 27. Disqus na stronie wzmacniacza wewnątrz amp-iframe
- 28. Skrypt iniekcyjny wewnątrz iframe innej domeny
- 29. Jak znaleźć element div wewnątrz elementu iframe?
- 30. JavaScript za pomocą metody replace wewnątrz iframe
Próbowałaś wprowadzenie słuchacza w znaczniku BODY zawartości wewnątrz iframe? – Zoidberg
To zewnętrzna strona w elemencie iframe; Nie mogę nic dodać ... – santa
Jest to możliwe, zobacz rozwiązanie crossbrowser: http://stackoverflow.com/a/32138108/1064513 –