【发布时间】:2017-10-13 04:18:59
【问题描述】:
我有一个脚本,其中单击特定 div(例如 id=packtoa)将(除其他外).addclass('show') 列出具有与单击的 div 的 id 匹配的类的项目。
效果很好,但是我希望下一个 div (id=packfhag) 做同样的事情,然后是下一个。所以我在我的 js 中多次使用相同的脚本,只是更改了 id 和类名。
我确信有一种非常明显的方法可以自动执行此操作,这样任何 id 以“pack”开头的 div 都会触发此脚本,提取 div id,并将其插入到类名称所在的脚本中调用。
而且我确信我已经接近尝试调整这个脚本了:
$("div[id^=pack]").each(function() {
var match = this.id.match(/\w+$/)[0];
$(this).addClass('show');
});
但我就是无法破解它。上面的内容可能有问题,或者我将其插入脚本中的错误位置:
// Tears of Ameratsu menu functions
$(document).bind('pageinit', function() {
// When link is clicked
$('#packtoa').click(function() {
// collapse the expansions menu
$("#expansionsmenu").click();
// hide everything except this expansion
$(".hidden").removeClass('show');
$(".packtoa").addClass('show');
// clear the search, and trigger a blank search
$('input[data-type="search"]').val('');
$('input[data-type="search"]').trigger("keyup");
});
});
我错过了什么?
【问题讨论】:
-
为什么不对类而不是ID进行点击操作,那么每个新创建的div都有相同的类?
标签: javascript jquery jquery-mobile