自定义JavaScript对象方法无法执行 未触发alert弹窗该如何解决?
问题原因
你仅完成了jsObject对象及其内部方法的定义,但没有在代码的任何位置主动调用jsObject.start()方法,因此alert弹窗逻辑永远不会被触发。
修复方案
你需要做两处调整:
- 在
$(document).ready回调的末尾添加jsObject.start()调用,触发初始化逻辑 - 为
jsObject添加明确的变量声明,避免隐式创建全局变量带来的潜在风险
修复后完整代码
<script src="Scripts/jquery-1.11.0.min.js"></script> <script> $(document).ready(function () { // 添加变量声明 const jsObject= {}; jsObject.start = function () { alert('Worked'); this.init(); this.attachCustomHandlersOnOutputConsole(); this.attachClickHandlersOnButtons(); }; jsObject.init = function () { //Code }; jsObject.attachCustomHandlersOnOutputConsole = function () { //Code }; jsObject.attachClickHandlersOnButtons = function () { //Code }; // 新增调用语句 jsObject.start(); }); </script>
补充排查点
如果按上述修改后仍未正常触发弹窗,请检查jQuery文件的引入路径Scripts/jquery-1.11.0.min.js是否和实际文件存放路径一致,jQuery加载失败会导致整个$(document).ready回调内的代码都不执行。
内容的提问来源于stack exchange,提问作者Ogun Bilgili
相关产品推荐
相关产品推荐

