使用jQuery,我想完成这个:
custom_
我想我可以使用is
函数来查找元素是否具有该类,我只是不知道如何删除该类并将其移动到一个元素。
if ( target.is( "[class^='custom_'],[class*=' custom_']" ) )
答案 0 :(得分:2)
在空格上拆分类,使用正则表达式检查每一个是否符合您的条件,删除匹配的类,将它们添加到父级:
var target = e.target;
var matched_classes = $(target).attr('class').split(' ').filter(
function(c) {
return /^custom_/.test(c)
}
).join(' ');
$(target).removeClass(matched_classes).parent().addClass(matched_classes);
答案 1 :(得分:0)
您可以使用正则表达式获取类名,然后采取相应的行动。
var target = $('#target'),
className = target.attr('class').match(/custom_*\w/)[0];
target.removeClass(className).parent().addClass(className);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="parent">
<div id="target" class="class1 class2 custom_3 class3"></div>
</div>
&#13;
答案 2 :(得分:0)
够好吗?
var $target = $('div.foo'),
classPrefix = 'custom_';
if($target.is('[class^="'+ classPrefix +'"]')){
var matchingClass = $target[0].className.split(' ').filter(function(className){
return ~className.indexOf(classPrefix);
})[0];
if(matchingClass)
$target.removeClass(matchingClass).parent().addClass(matchingClass);
console.log($target.parent(), $target);
}
编辑:看起来我迟到了