javascript - jquery 元素未定义,但它曾经跳过它

标签 javascript jquery

我最近将网站转移到新主机。重新加载了所有内容,之前运行良好的 JavaScript 在找不到的元素处崩溃了。 $('#emailForm') 未定义。

现在,#emailform 不在页面上,但以前也不在,JS 过去常常跳过这个,它就会正常工作。不知道为什么会发生这种情况。任何线索

这是我遇到问题的网站:

http://rosecomm.com/26/gearwrench/

最佳答案

如果没有 id='emailForm'< 的元素,将会$('#emailForm') 返回一个空的 jQuery 对象。/.

以下情况之一可能是正确的:

  • 您忘记包含 jQuery - 因此 $ 未定义。
  • 还有另一个库使用 $ - 在这种情况下,您可以将代码包装在快速闭包中,将 jQuery 重命名为 $

关闭:

(function($){ 
   // $ is jQuery
   $('#emailForm').whatever();
})(jQuery);

您可以在 firebug 中 console.log(window.$,window.jQuery); 来检查这两个问题。

关于javascript - jquery 元素未定义,但它曾经跳过它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2870411/

相关文章:

javascript - Angular js $Interval 奇怪的行为 - Firefox Chrome

javascript - 获取用于在页面上加载 div 的 URI?

javascript - 投入尝试,捕获,最后 - 奇怪的行为?

javascript - 根据下拉选择刷新 div 容器的全部内容

javascript - 使用 fabric.js 在按钮单击时在 Canvas 上添加图像

javascript - 使用 JavaScript 和 JQuery 数据表缓冲/延迟 ajax 请求/击键

javascript - 在 Nginx 代理后面刷新页面后,我的 Angular 6 路由返回 404

javascript - 如何通过jquery中的选择器跳过任何表列?

javascript - 如何使用 Babel 为 Internet Explorer 11 构建 React 应用程序?

选择标签上的 JavaScript 更改功能