Resig 的 jQuery 1.7 及更高版本的 Live Search redux?
Posted
技术标签:
【中文标题】Resig 的 jQuery 1.7 及更高版本的 Live Search redux?【英文标题】:Resig's Live Search redux for jQuery 1.7 and above? 【发布时间】:2012-12-29 01:43:54 【问题描述】:我最近发现了 Resig 的 jQuery rewrite of a Quicksilver Live Search 并喜欢它的工作原理……但我正在尝试更新它以使用新的 .on() 事件处理程序。然而,我的能力(或缺乏能力)令我失望。
我想我需要编辑“this.keyup(filter)...”,但我什么也没做。有什么想法吗?
更新:只是澄清一点。我想要更新脚本的想法是接受动态引入的列表项。只要它是一个静态列表,一切都可以正常工作,但是由于我引入了一个通过 ajax 调用创建的列表,所以它无法工作。我将模拟一个小提琴并很快将其链接到此处。与此同时,如果有人能帮助我,它会拯救我的隐藏。谢谢。
jQuery.fn.liveUpdate = function(list)
list = jQuery(list);
if ( list.length )
var rows = list.children('li'),
cache = rows.map(function()
//return this.innerhtml.toLowerCase();
return $('a', this)[0].innerHTML.toLowerCase();
);
this
.keyup(filter).keyup()
.parents('form').submit(function()
return false;
);
return this;
function filter()
var term = jQuery.trim( jQuery(this).val().toLowerCase() ), scores = [];
if ( !term )
rows.show();
else
rows.hide();
cache.each(function(i)
var score = this.score(term);
if (score > 0) scores.push([score, i]);
);
jQuery.each(scores.sort(function(a, b)return b[0] - a[0];), function()
jQuery(rows[ this[1] ]).show();
);
;
【问题讨论】:
【参考方案1】:所以我偶然遇到了this post,在jfk 的帮助下,它几乎总结了我正在寻找的东西。我想让脚本在创建动态内容后运行,而我应该做的是在用户想要进行搜索时调用脚本。
$('#staticParent').on("click", "#searchField", function()
$(this).livesearch("#dynamicElements").focus();
);
如果有更多高级开发人员提供的有关改进此功能的其他信息,我会全力以赴。我希望这有一天可以帮助另一个。 :)
【讨论】:
以上是关于Resig 的 jQuery 1.7 及更高版本的 Live Search redux?的主要内容,如果未能解决你的问题,请参考以下文章
使用 jquery 1.6 及更高版本会使 Django 的 FilteredSelectMutliple 无法使用