我有这个html:
<div class="content vertical-gradient">
<div id="button_id0" class="button services rounded-corners trans-effect"><a class="title-text" href="index.php?services">Tjänster</a></div>
<div id="button_id1" class="button prices rounded-corners trans-effect"><a class="title-text" href="index.php?prices">Priser</a></div>
<div id="button_id2" class="button about-me rounded-corners trans-effect"><a class="title-text" href="index.php?aboutme">Om mig</a></div>
</div>
加载 dom 后,我从每个按钮中保存文本(html),如下所示:
$(".button").each(function(index) {
//Store all texts (html) from buttons for later user with drag/drop
lastHtml[index] = $(this).html();
}
wherelastHtml
被定义为一个全局数组。
在某些情况下,我想更改一个按钮的 html,但是当我将它拖放到某个地方时,我想回到它的原始状态。因此,当将 dom 加载到变量 lastHtml-array 中时,我会保存文本(html)。
在下拉部分中,我通过它的 ID 检索按钮的索引(索引号由元素按钮(useButtonId´)检索,例如 button_id1 将返回索引 1,button_id2 将在删除时返回 index2)。
$( ".content").droppable({
accept: ".button.dragme", //Must come from this dragged element
drop: function( event, ui ) {
//Show ordinary text for button
var id = $(ui.helper).prop("id");
var idArray = id.split("_id"); //array of split between _id, example: [0] = button, [1] = 2
var useButtonId = idArray[1];
$(ui.helper).addClass("trans-effect").removeClass("dragme").removeClass("ui-draggable").html(lastHtml[useButtonId]);
}
}
但我真正想要的是这样的:(我想要有多少个我喜欢的按钮,而不必考虑 id,但我仍然希望在加载 dom 并恢复到原始状态时保存所有 html 值拖放特定按钮时的状态)。
<div class="content vertical-gradient">
<div name="button[]" class="button services rounded-corners trans-effect"><a class="title-text" href="index.php?services">Tjänster</a></div>
<div name="button[]" class="button prices rounded-corners trans-effect"><a class="title-text" href="index.php?prices">Priser</a></div>
<div name="button[]" class="button about-me rounded-corners trans-effect"><a class="title-text" href="index.php?aboutme">Om mig</a></div>
</div>
我认为!?我可以使用index()
,但我真的不知道如何使用。我试过:
$(ui.helper).index())
$('.content').index(ui.helper))
但他们似乎都没有返回正确的索引。