我正在努力解决这个问题一段时间。可以说,我在containerA和containerB中分别有imageA和imageB。另外,我有containerC。
我想做的是:
此时,我可以将imageA和imageB移动到containerC,但我无法将它们移回原来的位置。
HTML code:
<div id="containerA">
<img id="imageA" src="http://www.w3schools.com/images/tryitimg.gif" alt="imageA">
</div>
<div id="containerB">
<img id="imageB" src="http://www.w3schools.com/images/w3logotest2.png" alt="imageB">
</div>
JavaScript代码:
$(window).load(function(){
$("#imageA").on('click', function() {
$("#imageB").appendTo($("#containerC"));
});
$("#imageB").on('click', function() {
$("#imageA").appendTo($("#containerC"));
});
});
任何想法如何做到这一点?
答案 0 :(得分:1)
将标记更改为
<div id="containerA">
<img id="imageA" src="http://www.w3schools.com/images/tryitimg.gif" alt="imageA">
</div>
<div id="containerB">
<img id="imageB" src="http://www.w3schools.com/images/w3logotest2.png" alt="imageB">
</div>
<div id="containerC"></div>
并做
$(function(){
$("#imageA").on('click', function() {
var container = $("#imageB").closest("#containerC").length ? $("#containerA") : $("#containerC");
$("#imageB").appendTo(container);
});
$("#imageB").on('click', function() {
var container = $("#imageA").closest("#containerC").length ? $("#containerB") : $("#containerC");
$("#imageA").appendTo(container);
});
});