如何在 javascript 变量中包含 javascript 标签

How to include javascript tags in a javascript variable?

本文关键字:javascript 包含 标签 变量      更新时间:2023-09-26

基于这个问题的答案(参见JSFiddle(,我有:

var baseContent = '<!DOCTYPE html><html lang='"en'"><head><title>..etc...</head><body>'+myContent+'</body></html>';

。它可以工作(在这种情况下,产生 iframe 的内容(。但是,如果我使用相同的过程在<head>(或<body>(中添加一些javascript,例如:

<script type='"text/javascript'">swfobject.embedSWF('"flash.swf'", '"my_flash'");</script> 

。我在var baseContent = '收到错误unterminated string literal。 如何在var baseContent中包含 javascript?

更新

@TamarG 我尝试了下面的建议,但没有运气 - 请参阅:http://www.casedasole.it/fancybox/js/index.html。我需要在var baseContent中包含指向外部javascript文件(swobject.js(及其相关javascript的链接<head>。但是向var baseContent添加<script type='"text/javascript'" src='"swfobject.js'"></script>会停止 iframe 加载,并出现相同的错误: unterminated string literalvar baseContent = ' .

解释(回复下文(

我的问题中提到的JSFiddle显示了如何使用fancybox在页面加载时打开iframe。iframe的内容被编码在"启动"页面中(不寻常,因为通常花哨的iframe加载单独的HTML文件,图像,视频等(。

在JSFiddle示例中,var baseContent包含一个HTML示例,可用于创建iframe内容(<!DOCTYPE><head><style> <body>等(。用var baseContent编码基本 HTML 看起来很容易 - 例如 <style type="text/css">变得<style type='"text/css'">.

但我还需要 iframe <head>链接到外部 swfobject.js 文件,并包含标准的 2 行 swfobject 闪光检测脚本、swfobject.embedSWF("flash.swf", "my_flash" 等。

但是当我使用与其他 HTML 标签相同的方法来编码 javascript 标签时,即将<script type="text/javascript" src="swfobject.js"></script>编码为 <script type='"text/javascript'" src='"swfobject.js'"></script> ,会出现错误,并且 iframe 在页面加载时无法打开 - 请参阅此页面。

所以我的问题是如何格式化var baseContent外部 js 文件的链接(然后,一旦工作,如何在var baseContent本身中格式化 js(。

><script type='"text/javascript'">是在html中输入JS。 如果主代码是 JS - 只需删除<script type='"text/javascript'"></script>并只编写swfobject.embedSWF("flash.swf", "my_flash");

'<!DOCTYPE html><html lang='"en'"><head><title>'+
swfobject.embedSWF("flash.swf", "my_flash")
+'</head><body>'+myContent+'</body></html>';