<script>
document.getElementsByTagName("head")[0].appendChild("<scr" + "ipt>alert('Hi!');</scr" + "ipt>");
</script>
我有一个包含JS代码的PHP字符串。为了这段代码,我们可以说我的字符串是<script>alert('Hi!');</script>
。在我的HTML文档的正文中,我如何使用JS将JS字符串插入到头部。
正如你所看到的,我将单词脚本分成两部分,以便在将它推到头部之前不会在体内处理它。
PHP字符串包含:
<script type='text/javascript'>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
(function() {
var gads = document.createElement('script');
gads.async = true;
gads.type = 'text/javascript';
var useSSL = 'https:' == document.location.protocol;
gads.src = (useSSL ? 'https:' : 'http:') +
'//www.googletagservices.com/tag/js/gpt.js';
var node = document.getElementsByTagName('script')[0];
node.parentNode.insertBefore(gads, node);
})();
</script>
<script type='text/javascript'>
googletag.cmd.push(function() {
googletag.defineSlot('/1019006/ba_ad_footer_728x90', [728, 90], 'div-gpt-ad-1378123123651-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>
用于生成JS的PHP代码:
<?php $header_code = $GLOBALS['settings']['header_code']; // just an example of how I load the code ?>
JS插入PHP
document.getElementsByTagName("head")[0].appendChild("<?php echo $header_code; ?>");
答案 0 :(得分:0)
它不会附加它,因为您尝试附加字符串而不是DOM节点。
var s = document.createElement('script');
s.appendChild(document.createTextNode('alert("Hi!")'));
document.getElementsByTagName("head")[0].appendChild(s);