我有一个名为GlobalAll()的现有全局JavaScript函数。默认情况下,此功能在每个页面上加载。
function GlobalAll(){alert("I am Global!");}
此功能不返回任何内容。在某些页面上,我想重新定义此功能,以便提醒“我是本地人!”相反或根本没有警觉。函数名称需要保持不变,而不仅仅是警告某些内容。
因此,从技术上讲,我们需要的是重写/覆盖此全局函数,并在特定页面中使用相同的名称调用它。
任何解决方案?
答案 0 :(得分:3)
由于DOM从上到下依次加载,只需将其重新定义在最初定义它的位置以外的地方。
所以:
<body>
<script src="something.js"></script> <!-- defines GlobalAll() -->
<script>
function GlobalAll() {
alert('I am local');
}
</script>
</body>
答案 1 :(得分:0)
您可以在每个页面上定义GlobalAll的专用行为。只需确保新定义位于旧定义之后,javascript应使用较新的定义。
答案 2 :(得分:0)
让我们支持你有一个名为global.js的javascript文件。在其中,您有一个GlobalAll
函数:
function GlobalAll() {
alert("I am Global");
}
让我们假设你有这个HTML:
<html>
<head>
<script type="text/javascript" src="/js/global.js"></script>
</head>
<body>
</body>
</html>
您正在某个地方呼叫GlobalAll
,因此您必须拥有以下内容:
<html>
<head>
<script type="text/javascript" src="/js/global.js"></script>
<script type="text/javascript">
GlobalAll();
</script>
</head>
<body>
</body>
</html>
此提醒I am Global
。您需要在最初定义之后覆盖该函数,以确保您的本地函数覆盖全局,并且在调用之前需要覆盖该函数,以确保在调用它时使用正确的实例:< / p>
<html>
<head>
<script type="text/javascript" src="/js/global.js"></script>
<script type="text/javascript">
function GlobalAll() {
alert("I am Local");
}
GlobalAll();
</script>
</head>
<body>
</body>
</html>