繁体   English   中英

Javascript 检查本地脚本是否存在

[英]Javascript Check if local Script exists

假设我有一个可能并不总是存在的脚本,如果它不存在,我如何确保不调用?

HTML 部分

 <script src="js/model.js"></script> <script src="js/view.js"></script> <script src="js/controller.js"></script> <script src="js/script.js"></script>

(function(model, view, script){
"use strict";
     document.addEventListener('loadata', function (e) {
         script.loadData(e.detail);
 });

Controller.js 部分

如果脚本不存在,如何阻止 Controller 使用该脚本?

我如何从 HTML 文件中删除它?

编辑:我还从 Controller 对脚本中的函数进行了 1 或 2 次调用

解决方案1

您可以在 script.js 中添加一个标志(在全局范围内)

var myCustomFlag = true;

在控制器中,您可以检查它是否已运行:

if (window.myCustomFlag == true) {
//stop your controller etc
}

解决方案2

您可以使用 querySelectorAll 检查标签是否存在

在你的控制器中

var scriptIsLoaded = document.querySelectorAll("script[src='js/script.js']").length > 0;
if (scriptIsLoaded ){
 //stop your controller etc
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM