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>
以上代码显示趋势图。
请注意上述网址中的q=iphone
。在这种情况下,我想传递一个javascript变量值,而不是硬编码像iphone这样的固定值。
如何在脚本标记的src中使用Javascript变量?
我尝试以编程方式创建脚本,它会注入脚本代码,但脚本不会被执行。
我的尝试
document.body.appendChild(document.createElement('script')).src= varHavingScriptURL;
我的尝试DEMO FIDDLE HERE
Jsfiddle或demo会有所帮助。
由于
答案 0 :(得分:0)
问题是,页面加载后你无法做到这一点。查看脚本的来源
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,它无法正常工作。
答案 1 :(得分:0)
经过几个小时的努力,我找到了使用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>');
});