我正在尝试将weatherwidget.io的小部件添加到我的网站,但是需要根据用户当前位置动态使用字符串。例如,我将包含一个硬字符串,但知道我是根据位置拉出字符串的。
this.weatherwidget = '
<div><a class="weatherwidget-io" href="https://forecast7.com/en/38d91n77d04/washington/?unit=us" data-label_1="Washington Monument" data-label_2="National Mall" data-font="Arimo" data-theme="sky">Washington Monument National Mall</a>
<script>
! function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (!d.getElementById(id)) {
js = d.createElement(s);
js.id = id;
js.src = "https://weatherwidget.io/js/widget.min.js";
fjs.parentNode.insertBefore(js, fjs);
}
}(document, "script", "weatherwidget-io-js");
</script>';
我确实读过HTML 5不允许嵌入脚本,并且尝试了唯一可以找到的其他解决方案,该解决方案是将其嵌入img onload事件中,如下所示:
<img src='empty.gif' onload='"https://forecast7.com/en/38d91n77d04/washington/?unit=us" data-label_1="Washington Monument" data-label_2="National Mall" data-font="Arimo" data-theme="sky" >Washington Monument National Mall</a><script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="https://weatherwidget.io/js/widget.min.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","weatherwidget-io-js");</script>';
但是这似乎也不起作用。如何动态构建包含脚本的hmtl?