请看一下下面的两个 fiddle 。一个有 jquery mobile,另一个没有(仅限 jquery)。仅 jquery 版本可以找到同级,但 jqm 版本则不能!我做错了什么?!
$("#UCMRegSel").change(function() {
$(this).siblings("select").toggleClass("toggle");
console.log($(this).attr('id'));
$(this).siblings('select').each(function() {
if (self != this)
console.log($(this).attr('id'));
});
});
JQM版本:https://jsfiddle.net/dpatel20/1e2Ltr04/
仅 Jquery 版本:https://jsfiddle.net/dpatel20/teLx8Ly1/
最佳答案
jQuery Mobile 在选择时创建额外的容器。所以 sibling 功能将不起作用。
请改用以下内容。
$("#UCMRegSel").change(function() {
$(this).closest('.ui-select')
.siblings(".ui-select").toggleClass("toggle");
$(this).closest('.ui-select')
.siblings(".ui-select")
.each(function() {
var select = $(this).find('select').eq(0);
if (self != select)
console.log(select.attr('id'));
});
});
关于javascript - 使用 jquery mobile 时,siblings() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34436566/