JSFiddle - React, Tailwind, and code Playground

by masbicudo

HTML

<iframe id="frame" width="300" height="300" src="http://fiddle.jshell.net/"></iframe>
<div id="output">Resultado:<br/></div>

JavaScript

$(function(){
    var iframeWindow = $("#frame").get(0); 
    var items = {};
    
    debugger;
    find(iframeWindow, [], {stop:false, cnt:0, items: items});
    // localizando as instâncias do jQuery
    var el = document.getElementById("output");
    el.innerHTML += (items.$.join("<br/>"));
    el.innerHTML += (items.jQuery.join("<br/>"));
    
    debugger;
    el.innerHTML += ("<br/>"+"<br/>");
    el.innerHTML += (iframeWindow.contentWindow.$);
    el.innerHTML += ("<br/>"+"<br/>");
    el.innerHTML += (iframeWindow.contentDocument.window.$);
});

function find(obj, path, opts)
{
    if (path.length < 4 && opts.stop==false)
    {
        try{
            for(var k in obj) {
                if (opts.stop)
                    return;
                
                path.push(k);
                try{
                    {
                        if (!opts.items[k]) opts.items[k] = [];
                        opts.items[k].push(path.join('.'));
                        if (typeof obj[k] != 'string')
                            find(obj[k], path, opts);
                    }
                }
                catch(x){
                    console.error(x);
                }
                finally{
                    path.pop();
                }
                
                if (opts.cnt++==1000)
                    debugger;
            }   
        }
        catch(x){
            console.error(x);
        }
    }
}