How to get the element inside an iframe dynamically by hovering the iframe
up vote
3
down vote
favorite
I need to get the element which is inside the iframe by hovering over the element for example if the button is available inside the iframe means i need to get the button element.
I have used query selector (:hover) to get the hovered element but I am able to get the elements upto iframe only from the top document. I cannot able to get the element inside the iframe.
Has any one come across this?
iframe
add a comment |
up vote
3
down vote
favorite
I need to get the element which is inside the iframe by hovering over the element for example if the button is available inside the iframe means i need to get the button element.
I have used query selector (:hover) to get the hovered element but I am able to get the elements upto iframe only from the top document. I cannot able to get the element inside the iframe.
Has any one come across this?
iframe
add a comment |
up vote
3
down vote
favorite
up vote
3
down vote
favorite
I need to get the element which is inside the iframe by hovering over the element for example if the button is available inside the iframe means i need to get the button element.
I have used query selector (:hover) to get the hovered element but I am able to get the elements upto iframe only from the top document. I cannot able to get the element inside the iframe.
Has any one come across this?
iframe
I need to get the element which is inside the iframe by hovering over the element for example if the button is available inside the iframe means i need to get the button element.
I have used query selector (:hover) to get the hovered element but I am able to get the elements upto iframe only from the top document. I cannot able to get the element inside the iframe.
Has any one come across this?
iframe
iframe
asked Nov 19 at 9:29
sadham hussain
142
142
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
It is restricted by CORS (so generally you can not observe widgets included from 3rd-party sites this way), but otherwise doable in recent browsers, you just have to work with the contentWindow
of the iframe
, and perhaps use elementFromPoint()
.
Example frame.html
:
<div>Test1</div>
<div>Test2</div>
<div>Test3</div>
<div>Test4</div>
<div>Test5</div>
And containing test.html
:
<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function startup(){
frame.contentWindow.document.addEventListener("click",function(event){
frame.contentWindow.document
.elementFromPoint(event.clientX,event.clientY).innerHTML+="!";
});
}
</script>
</head>
<body onload="startup()">
<iframe id="frame" width="300" height="200" src="frame.html"></iframe>
</body>
</html>
Click on the elements of the iframe
and their content will get appended with exclamation marks.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
It is restricted by CORS (so generally you can not observe widgets included from 3rd-party sites this way), but otherwise doable in recent browsers, you just have to work with the contentWindow
of the iframe
, and perhaps use elementFromPoint()
.
Example frame.html
:
<div>Test1</div>
<div>Test2</div>
<div>Test3</div>
<div>Test4</div>
<div>Test5</div>
And containing test.html
:
<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function startup(){
frame.contentWindow.document.addEventListener("click",function(event){
frame.contentWindow.document
.elementFromPoint(event.clientX,event.clientY).innerHTML+="!";
});
}
</script>
</head>
<body onload="startup()">
<iframe id="frame" width="300" height="200" src="frame.html"></iframe>
</body>
</html>
Click on the elements of the iframe
and their content will get appended with exclamation marks.
add a comment |
up vote
0
down vote
It is restricted by CORS (so generally you can not observe widgets included from 3rd-party sites this way), but otherwise doable in recent browsers, you just have to work with the contentWindow
of the iframe
, and perhaps use elementFromPoint()
.
Example frame.html
:
<div>Test1</div>
<div>Test2</div>
<div>Test3</div>
<div>Test4</div>
<div>Test5</div>
And containing test.html
:
<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function startup(){
frame.contentWindow.document.addEventListener("click",function(event){
frame.contentWindow.document
.elementFromPoint(event.clientX,event.clientY).innerHTML+="!";
});
}
</script>
</head>
<body onload="startup()">
<iframe id="frame" width="300" height="200" src="frame.html"></iframe>
</body>
</html>
Click on the elements of the iframe
and their content will get appended with exclamation marks.
add a comment |
up vote
0
down vote
up vote
0
down vote
It is restricted by CORS (so generally you can not observe widgets included from 3rd-party sites this way), but otherwise doable in recent browsers, you just have to work with the contentWindow
of the iframe
, and perhaps use elementFromPoint()
.
Example frame.html
:
<div>Test1</div>
<div>Test2</div>
<div>Test3</div>
<div>Test4</div>
<div>Test5</div>
And containing test.html
:
<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function startup(){
frame.contentWindow.document.addEventListener("click",function(event){
frame.contentWindow.document
.elementFromPoint(event.clientX,event.clientY).innerHTML+="!";
});
}
</script>
</head>
<body onload="startup()">
<iframe id="frame" width="300" height="200" src="frame.html"></iframe>
</body>
</html>
Click on the elements of the iframe
and their content will get appended with exclamation marks.
It is restricted by CORS (so generally you can not observe widgets included from 3rd-party sites this way), but otherwise doable in recent browsers, you just have to work with the contentWindow
of the iframe
, and perhaps use elementFromPoint()
.
Example frame.html
:
<div>Test1</div>
<div>Test2</div>
<div>Test3</div>
<div>Test4</div>
<div>Test5</div>
And containing test.html
:
<!DOCTYPE html>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function startup(){
frame.contentWindow.document.addEventListener("click",function(event){
frame.contentWindow.document
.elementFromPoint(event.clientX,event.clientY).innerHTML+="!";
});
}
</script>
</head>
<body onload="startup()">
<iframe id="frame" width="300" height="200" src="frame.html"></iframe>
</body>
</html>
Click on the elements of the iframe
and their content will get appended with exclamation marks.
answered Nov 19 at 14:49
tevemadar
4,2182723
4,2182723
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53371672%2fhow-to-get-the-element-inside-an-iframe-dynamically-by-hovering-the-iframe%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown