使用所有页面中的代码在.js文件中加载特定于页面的脚本

时间:2014-02-07 08:50:48

标签: javascript

我正在尝试为所有页面使用相同的JS文件,但每页都有特定的代码。我应该使用哪种设计模式来防止代码冲突,并且必须在我的页面中添加脚本标记才能调用特定的代码?

我通常做的例子:

<script type="text/javascript" src="myscript.js"></script>
<script type="text/javascript">
var page = new PageA();
page.init();
</script>

我正在为最后一个脚本标签寻找替代方案,因为我认为这可能是不必要的。

1 个答案:

答案 0 :(得分:0)

如果要将所有javascript捆绑到一个文件中,可以使用此方法,尽管我不建议这样做,因为您将加载比所需数量更多的javascript。
能够执行此操作的唯一原因是HTML允许您创建以以下内容开头的自己的属性:data-

if(document.querySelector('html').getAttribute('data-document-name') == "document1"){
    // Code for document1
    alert("You are document1");
};
if(document.querySelector('html').getAttribute('data-document-name') == "document2"){
    // Code for document2 
    alert("You are document2");
};

这是在html文件上的样子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script src="yourScriptFile.js"> </script>
</body>
</html>