在html正文中选择<script> ... </script>的内容作为纯文本?

时间:2013-12-15 17:15:11

标签: javascript jquery

好的,让我说我有这个:

<head>
  <script type="text/javascript" src="mySecondScript.js">
</head>
<body>
<div class="mainScriptContainer">
  <script type="text/javascript">
    jwplayer('jwplayer-0').setup({
    "image": "http://i1.ytimg.com/vi/hHbAEl1Wbms/0.jpg",
    "file": "https://www.youtube.com/watch?v=hHbAEl1Wbms"
    });
  </script>
</div>
</body>

我想要做的就是(在标题中的“mySecondScript.js”中)选择<script type="text/javascript">...</script>的整个内容作为纯文本,并将其包含在变量中。

我将尝试进一步解释一下我可以用它做什么以及应该有什么效果的例子

功能(){   var plainText =; //这里是选择整个脚本内容的函数,它本身包含在内   警报(明文); };

这会产生一个警告说:

jwplayer('jwplayer-0').setup({"image": "http://i1.ytimg.com/vi/hHbAEl1Wbms/0.jpg", "file": "https://www.youtube.com/watch?v=hHbAEl1Wbms"});

该函数可以在Javascript或jQuery中,无关紧要

2 个答案:

答案 0 :(得分:2)

您可以使用.text()功能获取该脚本标记的文本。请阅读here以了解有关.text()

的更多信息

尝试,

$(function(){
   var plainText = $('.mainScriptContainer script').text();
   alert(plainText);
});

DEMO

答案 1 :(得分:1)

<script>元素是DOM中的元素节点,因此您可以像这样获取它们:

document
    .getElementsByClassName('mainScriptContainer')[0]
    .getElementsByTagName('script')[0];

然后,要获得其内部文本,您可以使用