簡體   English   中英

在腳本標簽的 src 內使用 JavaScript 變量

[英]Use a JavaScript variable inside src of script tag

Google 通過將此代碼放置在我們的網站中來提供其腳本嵌入代碼以顯示趨勢圖。

<script type="text/javascript" src="//www.google.com.pk/trends/embed.js?hl=en-US&q=iphone&cmpt=q&content=1&cid=TIMESERIES_GRAPH_0&export=5&w=500&h=330"></script>

上面的代碼顯示了趨勢圖。

注意上面 URL 中的q=iphone 在這種情況下,我想傳遞一個 JavaScript 變量值,而不是像 iPhone 那樣硬編碼一個固定值。

如何在腳本標簽的 src 中使用 JavaScript 變量?

我嘗試以編程方式創建腳本,它注入了腳本代碼,但腳本沒有被執行。

我的嘗試

document.body.appendChild(document.createElement('script')).src= varHavingScriptURL;

我的嘗試是在這里的 JS Fiddle

問題是,頁面加載后你不能這樣做。 查看腳本的來源

document.write('<iframe width="500" ... </iframe>');

因此,您需要在頁面渲染時執行此操作,因為document.write

現在看看你做了什么

document.body.appendChild(document.createElement('script')).src = varHavingScriptURL;

那是行不通的,你需要打破它

var scr = document.createElement('script');
scr.src = varHavingScriptURL;
document.getElementsByTagName("head")[0].appendChild(scr);

但同樣,由於 document.write,它不會工作。

經過數小時的努力,我終於找到了使用 PostScribe 的解決方案。

 // jQuery used as an example of delaying until load.


$(function
 () {
// Build url params and make the ad call
  var str= "magic";
postscribe('#ad', '<script src=//www.google.com.pk/trends/embed.js?hl=en-US&q='+str+'&cmpt=q&content=1&cid=TIMESERIES_GRAPH_0&export=5&w=500&h=330><\/script>');


});

后記

工作演示

暫無
暫無

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

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