How to disable all JS events on a webpage loaded under iframe











up vote
0
down vote

favorite












I have a webpage which has JS click/mouseover/mouseout/scroll events and also it has few JS libraries to load carousel, bootstrap modal pop up etc.



I want to stop all events on the element.



I was successful to unbind few click events on html, however was not able to unbind events of the 3rd party JS which is used to slide the carousel / show bootstrap pop up etc.



I tried using :



window.onload = function(){
var anchors = document.getElementsByTagName("a");
for(var a in anchors){
anchors[a].onclick = function(e){
e.preventDefault();
}
}

var divs = document.getElementsByTagName("div");
for(var d in divs){

if (divs[d].removeEventListener) {
console.log("click removed eee");
// For all major browsers, except IE 8 and earlier
divs[d].removeEventListener("click", function(){ console.log("click removed"); });
} else if (divs[d].detachEvent) { // For IE 8 and earlier versions
console.log("click detached eee");
divs[d].detachEvent("click", function(){ console.log("click detached"); });
}
}
};


The anchor redirection was stopped successfully. However the click events on div was still working. Please help me out how to stop all events binding on webpage.



Here is how google is doing?



https://www.google.com/webmasters/markup-helper/tagger?sourceId=104528819



There download the page at their end, render it using iframe and unbind all events. What they might have done?










share|improve this question






















  • Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
    – skobaljic
    Nov 11 at 14:17












  • @skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
    – Vivek Tankaria
    Nov 11 at 15:03










  • What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
    – Vivek Tankaria
    Nov 11 at 15:04

















up vote
0
down vote

favorite












I have a webpage which has JS click/mouseover/mouseout/scroll events and also it has few JS libraries to load carousel, bootstrap modal pop up etc.



I want to stop all events on the element.



I was successful to unbind few click events on html, however was not able to unbind events of the 3rd party JS which is used to slide the carousel / show bootstrap pop up etc.



I tried using :



window.onload = function(){
var anchors = document.getElementsByTagName("a");
for(var a in anchors){
anchors[a].onclick = function(e){
e.preventDefault();
}
}

var divs = document.getElementsByTagName("div");
for(var d in divs){

if (divs[d].removeEventListener) {
console.log("click removed eee");
// For all major browsers, except IE 8 and earlier
divs[d].removeEventListener("click", function(){ console.log("click removed"); });
} else if (divs[d].detachEvent) { // For IE 8 and earlier versions
console.log("click detached eee");
divs[d].detachEvent("click", function(){ console.log("click detached"); });
}
}
};


The anchor redirection was stopped successfully. However the click events on div was still working. Please help me out how to stop all events binding on webpage.



Here is how google is doing?



https://www.google.com/webmasters/markup-helper/tagger?sourceId=104528819



There download the page at their end, render it using iframe and unbind all events. What they might have done?










share|improve this question






















  • Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
    – skobaljic
    Nov 11 at 14:17












  • @skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
    – Vivek Tankaria
    Nov 11 at 15:03










  • What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
    – Vivek Tankaria
    Nov 11 at 15:04















up vote
0
down vote

favorite









up vote
0
down vote

favorite











I have a webpage which has JS click/mouseover/mouseout/scroll events and also it has few JS libraries to load carousel, bootstrap modal pop up etc.



I want to stop all events on the element.



I was successful to unbind few click events on html, however was not able to unbind events of the 3rd party JS which is used to slide the carousel / show bootstrap pop up etc.



I tried using :



window.onload = function(){
var anchors = document.getElementsByTagName("a");
for(var a in anchors){
anchors[a].onclick = function(e){
e.preventDefault();
}
}

var divs = document.getElementsByTagName("div");
for(var d in divs){

if (divs[d].removeEventListener) {
console.log("click removed eee");
// For all major browsers, except IE 8 and earlier
divs[d].removeEventListener("click", function(){ console.log("click removed"); });
} else if (divs[d].detachEvent) { // For IE 8 and earlier versions
console.log("click detached eee");
divs[d].detachEvent("click", function(){ console.log("click detached"); });
}
}
};


The anchor redirection was stopped successfully. However the click events on div was still working. Please help me out how to stop all events binding on webpage.



Here is how google is doing?



https://www.google.com/webmasters/markup-helper/tagger?sourceId=104528819



There download the page at their end, render it using iframe and unbind all events. What they might have done?










share|improve this question













I have a webpage which has JS click/mouseover/mouseout/scroll events and also it has few JS libraries to load carousel, bootstrap modal pop up etc.



I want to stop all events on the element.



I was successful to unbind few click events on html, however was not able to unbind events of the 3rd party JS which is used to slide the carousel / show bootstrap pop up etc.



I tried using :



window.onload = function(){
var anchors = document.getElementsByTagName("a");
for(var a in anchors){
anchors[a].onclick = function(e){
e.preventDefault();
}
}

var divs = document.getElementsByTagName("div");
for(var d in divs){

if (divs[d].removeEventListener) {
console.log("click removed eee");
// For all major browsers, except IE 8 and earlier
divs[d].removeEventListener("click", function(){ console.log("click removed"); });
} else if (divs[d].detachEvent) { // For IE 8 and earlier versions
console.log("click detached eee");
divs[d].detachEvent("click", function(){ console.log("click detached"); });
}
}
};


The anchor redirection was stopped successfully. However the click events on div was still working. Please help me out how to stop all events binding on webpage.



Here is how google is doing?



https://www.google.com/webmasters/markup-helper/tagger?sourceId=104528819



There download the page at their end, render it using iframe and unbind all events. What they might have done?







javascript jquery html addeventlistener event-listener






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 11 at 13:55









Vivek Tankaria

9871821




9871821












  • Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
    – skobaljic
    Nov 11 at 14:17












  • @skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
    – Vivek Tankaria
    Nov 11 at 15:03










  • What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
    – Vivek Tankaria
    Nov 11 at 15:04




















  • Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
    – skobaljic
    Nov 11 at 14:17












  • @skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
    – Vivek Tankaria
    Nov 11 at 15:03










  • What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
    – Vivek Tankaria
    Nov 11 at 15:04


















Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
– skobaljic
Nov 11 at 14:17






Not quite clear though... in question you say iframe, but in code I see parent dom events... do you inject your script inside iframe or what? Btw, the google link aint working. You could load the page via proxy and remove scripts, than show inside friendly iframe?
– skobaljic
Nov 11 at 14:17














@skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
– Vivek Tankaria
Nov 11 at 15:03




@skobaljic yes I injected my script in the HTML and loaded the whole HTML in iframe. The google link is working. Please recheck.
– Vivek Tankaria
Nov 11 at 15:03












What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
– Vivek Tankaria
Nov 11 at 15:04






What google does is. It download the webpage. Save it in the HTML page. Stops all event binding and anchor redirection of that page. And render that HTML page in the iframe. The page loads as it used to load on browser, but without any effects and events binded to its element.
– Vivek Tankaria
Nov 11 at 15:04














1 Answer
1






active

oldest

votes

















up vote
0
down vote













You didn't mention the thing that, wheather your conent inside iframe is from another domain or from same?



In case of let say, if your iframe's content isn't from another domain. then below is the solution works for you.



document.getElementById('edit').contentWindow.addEventListener('keypress', cK, true);


for more details see the this.



Let me know your point of view. Thanks.






share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53249449%2fhow-to-disable-all-js-events-on-a-webpage-loaded-under-iframe%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    You didn't mention the thing that, wheather your conent inside iframe is from another domain or from same?



    In case of let say, if your iframe's content isn't from another domain. then below is the solution works for you.



    document.getElementById('edit').contentWindow.addEventListener('keypress', cK, true);


    for more details see the this.



    Let me know your point of view. Thanks.






    share|improve this answer

























      up vote
      0
      down vote













      You didn't mention the thing that, wheather your conent inside iframe is from another domain or from same?



      In case of let say, if your iframe's content isn't from another domain. then below is the solution works for you.



      document.getElementById('edit').contentWindow.addEventListener('keypress', cK, true);


      for more details see the this.



      Let me know your point of view. Thanks.






      share|improve this answer























        up vote
        0
        down vote










        up vote
        0
        down vote









        You didn't mention the thing that, wheather your conent inside iframe is from another domain or from same?



        In case of let say, if your iframe's content isn't from another domain. then below is the solution works for you.



        document.getElementById('edit').contentWindow.addEventListener('keypress', cK, true);


        for more details see the this.



        Let me know your point of view. Thanks.






        share|improve this answer












        You didn't mention the thing that, wheather your conent inside iframe is from another domain or from same?



        In case of let say, if your iframe's content isn't from another domain. then below is the solution works for you.



        document.getElementById('edit').contentWindow.addEventListener('keypress', cK, true);


        for more details see the this.



        Let me know your point of view. Thanks.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 13 at 5:00









        Priyal Pithadiya

        8241512




        8241512






























            draft saved

            draft discarded




















































            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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53249449%2fhow-to-disable-all-js-events-on-a-webpage-loaded-under-iframe%23new-answer', 'question_page');
            }
            );

            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







            Popular posts from this blog

            Guess what letter conforming each word

            Port of Spain

            Run scheduled task as local user group (not BUILTIN)