将js文件从原型迁移到jQuery不起作用
Migrating js file from prototype to jQuery does not work
我正在将文件从原型迁移到jQuery。
原型:
function hideEditableMarkers() {
$$('.edit_marker').each(function(el) {
el.hide();
});
$$('.show_marker').each(function(el) {
el.show();
});
}
Event.observe(window, 'load', hideEditableMarkers);
j查询:
function hideEditableMarkers() {
jQuery('.edit_marker').each(function(el){
el.hide();
});
jQuery('.show_marker').each(function(el){
el.show();
});
}
jQuery(document).ready(hideEditableMarkers());
我不知道为什么它不起作用。
每个回调函数的第一个参数是元素的索引,而不是对它的引用
所以这里是jQuery代码
function hideEditableMarkers() {
$('.edit_marker').each(function(idx,el){
$(el).hide(); // You may use 'this' variable in here as it points to the current element as well
});
$('.show_marker').each(function(idx,el){
$(el).show();
});
}
这个:
jQuery(document).ready(hideEditableMarkers());
应该是:
jQuery(document).ready(hideEditableMarkers);
您需要将函数引用传递给ready
以便将其作为 DOM 就绪事件的回调处理程序执行。您当前正在做的是立即执行该函数(当元素不存在时),然后将该函数的返回(无)作为.ready()
的回调传递。
在每个
元素中使用$(this)
,以便它采用当前元素...您拥有的是索引并使用索引作为jQuery选择器el.hide()
试试这个
function hideEditableMarkers() {
jQuery('.edit_marker').each(function(el){
$(this).hide();
});
jQuery('.show_marker').each(function(el){
$(this).show();
});
}
jQuery(document).ready(function(){
hideEditableMarkers() ;
});
//or
jQuery(document).ready(hideEditableMarkers);
我相信一个函数应该是可重用的:
/*global jQuery */
function toggleMarkers (hideSelector, showSelector) {
jQuery(hideSelector).each(function () {
jQuery(this).hide();
});
jQuery(showSelector).each(function () {
jQuery(this).show();
});
}
jQuery(document).ready(function ($) {
toggleMarkers('.edit_marker', '.show_marker');
});
相关文章:
- 自动完成 jquery 不起作用
- 悬停时的Jquery不起作用
- 使用DateTimePicker插件的JQuery不起作用
- 无限滚动jquery不起作用
- 角度2触发器'单击'使用jquery不起作用
- 在 jQuery 不起作用的情况下迭代变量
- 切换下 jquery 不起作用
- 简单的jquery不起作用,并返回错误
- 等效于getElementbyName的jQuery不起作用
- Jquery不起作用,但我想一切都好
- 当按钮从ajax调用时,jquery不起作用
- 在jQuery不起作用的情况下阻止表单提交
- 为什么这个jquery不起作用
- 带有变量选择器的 Jquery 不起作用
- 简单的JavaScript/jQuery不起作用
- Wordpress jquery不起作用(计算系统)
- Django 模板内联 jQuery 不起作用
- 提示计算器 jquery 不起作用
- 追加 jquery 不起作用
- 正则表达式 jQuery 不起作用