我必须交换div。
交换工作正常(我正在使用Jquery Swap插件)。 交换后我也要交换DIV的ID。
请找到JQuery代码。请帮助我如何更换DIV ID。
$(".arrowIMG").click(function() {
var arr = this.id.split("_");
if(arr[0] == 'down'){
var div1 = $('#'+'div_' +arr[1]);
var next = (parseInt(arr[1]) + 1);
alert(next)
var div2 = 'div_' + next;
div1.swap({
target: div2,
opacity: "0.5",
speed: 1000,
callback: function() {
//Now Here i want to swap the id of div (div1 and dev2)
}
});
}else if(arr[0] == 'up') {
alert('up');
}
});
请帮助我换掉DIV ID。
答案 0 :(得分:2)
我不确定您的功能的确切行为是什么 - 但以下内容应该可以更改ID:
$(element).attr('id', 'new_id');
答案 1 :(得分:1)
callback: function() {
var div2selector = $('#'+div2); //making both selectors in same format as div2='div_' + next
var tempid = div1.attr('id');
div1.attr('id',div2selector.attr('id'));
div2selector.attr('id',tempid );
}
编辑:
div1和div2的格式不同。所以做了类似的
答案 2 :(得分:0)
使用jQuery .attr()获取匹配元素集中第一个元素的属性值。
检查一下:
<div id="my" > s,dfsd </div>
<div id="src" class="div1">
src
</div>
<div id="dest" class="div2">
dest
</div>
jQuery代码:
$("#my").attr('id','mynewid');
$("#mynewid").html("this new content");
var temp = $(".div1").attr('id');
$(".div1").attr('id',$(".div2").attr('id'));
$(".div2").attr('id', temp);
选中此jsFiddle
使用此代码段调整点击事件行为。在您的function()代码中,您已经访问过这些元素,因此您可以直接访问这些元素的ID。
var temp = div1.attr('id');
div1.attr('id',div2.attr('id'));
div2.attr('id', temp);