簡體   English   中英

通過jQuery通過AJAX加載來加載內聯Javascript

[英]Loading Inline Javascript through an AJAX load through jQuery

我對此問題也有類似的問題。

通過jQuery通過AJAX加載來加載Javascript?

我想使用Ajax和JQuery的.load()將HTML頁面加載到div容器中。 html頁面上有JavaScript,可從http://www.showmyweather.com/加載天氣小部件

這是腳本:

<script type="text/javascript" src="http://www.showmyweather.com/weather_widget.php?    int=0&type=js&country=ca&state=Ontario&city=Hamilton&smallicon=1&current=1&forecast=1&background_color=ffffff&color=000000&width=175&padding=10&border_width=1&border_color=000000&font_size=11&font_family=Verdana&showicons=1&measure=C&d=2013-11-11"></script>

除了將腳本內聯到html頁面之外,我不知道如何在DOM中包括小部件。 如果有使用此腳本的方法,並使用$ .getscript()將其添加到其中; 那會很好,但我無法弄清楚。

var element = document.createElement("iframe");
document.body.appendChild(element);
var frame = window.frames[windows.frames.length - 1];
frame.document.write('<scr' + 'ipt type="text/javascript" src="http://www.showmyweather.com/weather_widget.php?int=0&type=js&country=ca&state=Ontario&city=Hamilton&smallicon=1&current=1&forecast=1&background_color=ffffff&color=000000&width=175&padding=10&border_width=1&border_color=000000&font_size=11&font_family=Verdana&showicons=1&measure=C&d=2013-11-11"></sc'+ 'ript>');

這是使用Asset.javascript中的 mootools完成的方式:

var loadScript = function (source, properties) {
    properties || (properties = {});
    var script = document.createElement('script');
    script.async = true;
    script.src = source;
    script.type = 'text/javascript';
    var doc = properties.document || document, load = properties.onload || properties.onLoad;
    return delete properties.onload, delete properties.onLoad, delete properties.document, 
    load && (script.addEventListener ? script.addEventListener("load", load) : script.attachEvent("readystatechange", function() {
        [ "loaded", "complete" ].indexOf(this.readyState) >= 0 && load.call(this);
    }))
    doc.getElementsByClassName("head")[0].appendChild(script);
}

現在,您可以調用loadScript("script url", {document: window.frames[0].document}) ,它將在窗口中加載腳本。 只需要在選項和腳本中將其傳遞給外部文檔即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM