在使表单javascript在foundation中工作时遇到问题
Having trouble getting the forms javascript working within foundation
我正在尝试运行基金会自定义表单javascript,并不断遇到类型错误。错误是
表单无法初始化;TypeError无法调用方法"indexOf"未定义的"
我似乎不明白为什么会出现这个错误。看起来这段代码是的罪魁祸首
return arr.indexOf(item) === idx; around line 272
arr对象在尝试运行此代码时为null。不确定这是否是脚本早期出现其他错误的结果。如有任何帮助,我们将不胜感激。
arr对象在尝试运行此代码时为空
这正是错误所抱怨的。
您需要修复代码以确保arr
不是null,或者避免在它为null时使用它。
仅供参考,我刚刚遇到这个。这是一个Prototype.js冲突。基本上,原型<1.7.1没有为Array.filter
做一个ployfill,Prototype版本的方法似乎没有传递第三个参数,即arr
,也就是undefined
。所以你可以做一些事情来解决:
- 将Prototype升级到1.7.1-这是我所做的,但我还没有在Magento上彻底测试它,所以可能会有问题。。。这是一个次要的发布,可能出了什么问题:-)
-
调整Foundation代码块,这样您就可以提前获得在var中编译的类列表,然后您可以在回调中引用它来过滤:
// OLD $customSelect = $('<div class="' + ['custom', 'dropdown', customSelectSize].concat(copyClasses).filter(function (item, idx, arr) { if (item === '') return false; return arr.indexOf(item) === idx; }).join(' ') + '"><a href="#" class="selector"></a><ul /></div>'); //----------------- // NEW var classList = ['custom', 'dropdown', customSelectSize].concat(copyClasses); $customSelect = $('<div class="' + classList.filter(function (item, idx, arr) { if (item === '') return false; arr = typeof arr === 'undefined' ? classList : arr; return arr.indexOf(item) === idx; }).join(' ') + '"><a href="#" class="selector"></a><ul /></div>');
- 您可以尝试覆盖
Array.filter
的Prototype版本,以将Array作为第三个参数传递。我不完全确定它住在哪里,我寻找它,因为这是我第一次倾向于mitgate风险,但我最终决定升级
相关文章:
- 将PHP变量传递给jQuery时遇到问题
- 将jQuery转换为用户脚本的普通Javascript时遇到问题
- 将子文档推送到父数组时遇到问题
- JQuery FullCalendar在从ajax成功调用rerenderEvents时遇到问题
- 在将javascript附加到我的html中时遇到问题
- 为什么我在以编程方式打开窗口时遇到问题
- 在将缩略图链接到模态时遇到问题
- 使用 ng 模型获取数据时遇到问题
- 是否有其他人在设计Twitter Typeahead时遇到问题'的搜索栏
- 使用jquery进行整数比较时遇到问题
- 使用PhantomJS下载动态web内容时遇到问题
- 设置RequireJS时遇到问题
- 让Javascript在SharePoint 2010上运行时遇到问题
- I'我在react.js中编写for循环时遇到问题
- 通过jQuery获取上传的文件名时遇到问题
- 我在启动我的节点时遇到问题.js IRC 机器人
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- 从谷歌地图自定义控件打开离子模态时遇到问题
- 在使用 YAML 和 Google App Engine 时遇到问题
- 在 Chrome 扩展程序中将鼠标悬停在广告上使用时遇到问题