To detect dynamic loading of Frame










0















Frame design



I am working with such kind of frame design. Consider this image as brief overview of more complex design.



I am recursively iterating each frame, so as to add event listeners to it.
For the very first $(window).load() , I am able to add listeners successfully.



But the real trick is;
Frame 2.1 is navigationFrame whereas Frame 2.2 is detailFrame.
As name suggests whenever we click any link of 2.1, Frame 2.2 is loaded again.
Due to this, it looses listeners attached.
Since new frame is loaded, I can't keep track of newly loaded frame.



Though I've tried



element.onunload = function()
#add listeners recursively using element.parent

//where element is of type window
//created using
/*for(var i=0;i<window.frames.length;i++)
var element = window.frames[i];

*/


I've also tried ('frame').load, but didn't work.



I cant use #frameID since this work is generic to any web application (whether or not it use frame.)



Please suggest me any way to deal this kind of situation.










share|improve this question






















  • Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

    – Terry
    Nov 14 '18 at 10:11











  • The listeners are added outside of the frame 2.2?

    – Teemu
    Nov 14 '18 at 10:20











  • @Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

    – ShubhamWanne
    Nov 14 '18 at 11:38












  • @Teemu At very first time, listeners are added almost on complete web page.

    – ShubhamWanne
    Nov 14 '18 at 11:39











  • But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

    – Teemu
    Nov 14 '18 at 12:32
















0















Frame design



I am working with such kind of frame design. Consider this image as brief overview of more complex design.



I am recursively iterating each frame, so as to add event listeners to it.
For the very first $(window).load() , I am able to add listeners successfully.



But the real trick is;
Frame 2.1 is navigationFrame whereas Frame 2.2 is detailFrame.
As name suggests whenever we click any link of 2.1, Frame 2.2 is loaded again.
Due to this, it looses listeners attached.
Since new frame is loaded, I can't keep track of newly loaded frame.



Though I've tried



element.onunload = function()
#add listeners recursively using element.parent

//where element is of type window
//created using
/*for(var i=0;i<window.frames.length;i++)
var element = window.frames[i];

*/


I've also tried ('frame').load, but didn't work.



I cant use #frameID since this work is generic to any web application (whether or not it use frame.)



Please suggest me any way to deal this kind of situation.










share|improve this question






















  • Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

    – Terry
    Nov 14 '18 at 10:11











  • The listeners are added outside of the frame 2.2?

    – Teemu
    Nov 14 '18 at 10:20











  • @Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

    – ShubhamWanne
    Nov 14 '18 at 11:38












  • @Teemu At very first time, listeners are added almost on complete web page.

    – ShubhamWanne
    Nov 14 '18 at 11:39











  • But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

    – Teemu
    Nov 14 '18 at 12:32














0












0








0








Frame design



I am working with such kind of frame design. Consider this image as brief overview of more complex design.



I am recursively iterating each frame, so as to add event listeners to it.
For the very first $(window).load() , I am able to add listeners successfully.



But the real trick is;
Frame 2.1 is navigationFrame whereas Frame 2.2 is detailFrame.
As name suggests whenever we click any link of 2.1, Frame 2.2 is loaded again.
Due to this, it looses listeners attached.
Since new frame is loaded, I can't keep track of newly loaded frame.



Though I've tried



element.onunload = function()
#add listeners recursively using element.parent

//where element is of type window
//created using
/*for(var i=0;i<window.frames.length;i++)
var element = window.frames[i];

*/


I've also tried ('frame').load, but didn't work.



I cant use #frameID since this work is generic to any web application (whether or not it use frame.)



Please suggest me any way to deal this kind of situation.










share|improve this question














Frame design



I am working with such kind of frame design. Consider this image as brief overview of more complex design.



I am recursively iterating each frame, so as to add event listeners to it.
For the very first $(window).load() , I am able to add listeners successfully.



But the real trick is;
Frame 2.1 is navigationFrame whereas Frame 2.2 is detailFrame.
As name suggests whenever we click any link of 2.1, Frame 2.2 is loaded again.
Due to this, it looses listeners attached.
Since new frame is loaded, I can't keep track of newly loaded frame.



Though I've tried



element.onunload = function()
#add listeners recursively using element.parent

//where element is of type window
//created using
/*for(var i=0;i<window.frames.length;i++)
var element = window.frames[i];

*/


I've also tried ('frame').load, but didn't work.



I cant use #frameID since this work is generic to any web application (whether or not it use frame.)



Please suggest me any way to deal this kind of situation.







javascript jquery html dom






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 14 '18 at 10:09









ShubhamWanneShubhamWanne

162




162












  • Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

    – Terry
    Nov 14 '18 at 10:11











  • The listeners are added outside of the frame 2.2?

    – Teemu
    Nov 14 '18 at 10:20











  • @Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

    – ShubhamWanne
    Nov 14 '18 at 11:38












  • @Teemu At very first time, listeners are added almost on complete web page.

    – ShubhamWanne
    Nov 14 '18 at 11:39











  • But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

    – Teemu
    Nov 14 '18 at 12:32


















  • Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

    – Terry
    Nov 14 '18 at 10:11











  • The listeners are added outside of the frame 2.2?

    – Teemu
    Nov 14 '18 at 10:20











  • @Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

    – ShubhamWanne
    Nov 14 '18 at 11:38












  • @Teemu At very first time, listeners are added almost on complete web page.

    – ShubhamWanne
    Nov 14 '18 at 11:39











  • But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

    – Teemu
    Nov 14 '18 at 12:32

















Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

– Terry
Nov 14 '18 at 10:11





Frameset has been deprecated quite awhile ago. You really shouldn't be using it now.

– Terry
Nov 14 '18 at 10:11













The listeners are added outside of the frame 2.2?

– Teemu
Nov 14 '18 at 10:20





The listeners are added outside of the frame 2.2?

– Teemu
Nov 14 '18 at 10:20













@Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

– ShubhamWanne
Nov 14 '18 at 11:38






@Terry Actually , this is not my web page . I am supposed to deal with it as a part of browser add-on.

– ShubhamWanne
Nov 14 '18 at 11:38














@Teemu At very first time, listeners are added almost on complete web page.

– ShubhamWanne
Nov 14 '18 at 11:39





@Teemu At very first time, listeners are added almost on complete web page.

– ShubhamWanne
Nov 14 '18 at 11:39













But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

– Teemu
Nov 14 '18 at 12:32






But where? On the top-most page or somewhere else in that frame jungle? And as Terry said, framesets and frames are deprecated, prepare to create everything in HTML4 if you need a wide browser support for your app. F.e. IE9 doesn't show framesets and frames at all when having a HTML5 DTD, and many browsers which will show them, are downgrading to HTML4 automatically. This means the lack of the support for a lots of currently established APIs, CSS and elements, and no ES6, only ES5 JavaScript.

– Teemu
Nov 14 '18 at 12:32













0






active

oldest

votes











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',
autoActivateHeartbeat: false,
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%2f53297645%2fto-detect-dynamic-loading-of-frame%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes















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.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53297645%2fto-detect-dynamic-loading-of-frame%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







這個網誌中的熱門文章

Barbados

How to read a connectionString WITH PROVIDER in .NET Core?

Node.js Script on GitHub Pages or Amazon S3