我在 jquery 负载方面遇到问题。
以下功能正在运行。当我使用 onclick="load_content('new')"直接从 html 调用它时
但是如果我从另一个 Javascript 函数调用它,它将不起作用。它给了我错误 TypeError: undefined is not a function
function load_content(which) {
$('#content').load('html/' + which + '.html');
}
通过 console.log
我可以看到该函数已输入,因此函数中的第一行肯定存在问题。
菜单中的调用在以下 html 中运行
<div class="collapse navbar-collapse" id="main-nav">
<div class="nav-menu">
<ul class="nav main-nav">
<li class="item-101 active"><a class="scroll" href="#New" onclick="load_content('new')"><span>NEUES PROJEKT</span></a></li>
<li class="item-102"><a class="scroll" href="#Overview" onclick="load_content('overview')"><span>PROJEKTÜBERSICHT</span></a></li>
<li class="item-103"><a class="scroll" href="#Settings" onclick="load_content('settings')"><span>EINSTELLUNGEN</span></a></li></ul>
</div>
</div>
</div>
这里不起作用:
var dialogNew = function()
{
BootstrapDialog.closeAll();
var fs = require('fs');
fs.opensync(newPath, 'r');
load_content('new');
};
setTimeout(dialogNew, 2500);
我错过了什么?
虽然它可以与单击一起使用,但它也向我显示以下错误
未捕获类型错误:无法读取未定义的属性“构造函数”
这里有更精确的错误
TypeError: undefined is not a function
at dialogNew (eval at <anonymous> (file:///Users/proslav/Library/Developer/Xcode/DerivedData/trackingCore-ecxfviftqracjxhimcuhhhvyddso/Build/Products/Debug/trackingCore.app/Contents/Resources/timeBroFront.app/Contents/Resources/app.nw/js/jquery-1.10.2.min.js:3:4994), <anonymous>:37:7)
更新
发现错误了。这是之前的代码和我的代码的组合。我必须在调试方面变得更好。答案是重新定位 load_content
函数并替换 fs.opensync
最佳答案
我认为,
你在一个js文件中调用该函数,而该函数在另一个js文件中。确保调用 js 是在包含定义的 js 文件之后加载的。
关于javascript - 加载不工作未定义不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31541955/