如何将内联jQuery移动到外部.js文档?

时间:2012-03-14 00:46:22

标签: jquery variables external

我有以下代码。它适用于html文档。我想将脚本中的脚本移动到外部.js文档中。到目前为止,我所看到的所有内容都与函数有关,但我想在.js文档中分配变量,以便它们在html中无法查看。任何帮助,将不胜感激。谢谢!

<html>
<head>
<script type="text/javascript">
var userName = "exampleaddress";
var emServer = "exampledomain.com";
var tagLine = "?subject=Questions/Comments Re: exampledomain.com";
var emLink = userName + "@" + emServer + tagLine;
</script>
</head>

<body>
<script>
document.write("<a href='http://www."+emServer+"'>");
document.write(emServer);
document.write("<a>");
</script>
<br>
<script>
document.write("<a href='mailto:"+emLink+"'>");
document.write(userName);
document.write("<a>");
</script>
</body>
</html>

3 个答案:

答案 0 :(得分:2)

将其移至外部文件不会阻止用户看到它。如果浏览器可以访问某些内容,那么客户端也是如此。

与图像类似,您只需将javascript放在外部文件中并链接到它即可。

如:

<script type="text/javascript" src="myjs.js"></script>

我不知道为什么,但脚本标签不能自包含。

答案 1 :(得分:1)

将所有内容移动到外部js文件并加载它:

<script src="js/script.js"></script>

然后创建空容器,而不是document.write,您必须使用innerHtml

var userName = "exampleaddress",
    emServer = "exampledomain.com",
    tagLine = "?subject=Questions/Comments Re: exampledomain.com",
    emLink = userName + "@" + emServer + tagLine;

var html = '<a href="http://www."'+ emServer +'">' + emServer + '<a>';
document.getElementById('container').innerHtml = html;

//...

答案 2 :(得分:0)

要实现你的要求:

<head>
    <script type="text/javascript" src="past/to/file.js"></script>
</head>

file.js包含:

var userName = "exampleaddress";
var emServer = "exampledomain.com";
var tagLine = "?subject=Questions/Comments Re: exampledomain.com";
var emLink = userName + "@" + emServer + tagLine;

修改

您的问题中不可能的部分是变量不可见。 HTML ans JS文件始终可以纯文本格式访问(缺少更好的单词)

如果您尝试向最终用户隐藏这些值,则无法按照您的要求进行操作。告诉我们您的真实目的,我们或许可以提出更好的解决方案。