如果我对问题的标题不是很清楚,我想道歉,所以我将在这里举例说明。
我有这个网站http://color.ninski.ro我正在尝试建立一个菜单。
我需要这个菜单中的两件事:
- 当我单击一个元素时,它的位置会与第一个元素位置切换(感谢本网站用户 Khawer Zeshan 解决了这个问题)。
- 在一个元素成为第一个元素后,我需要它在不推动其余元素的情况下增加其宽度和高度,因此它可以显示“隐藏文本”,但是如果您单击另一个元素,它会与第一个元素切换它的位置并且它返回到原始 CSS。
这是菜单列表:
<ul class="unstyled" id="java">
<li id="b1"><div><a href="">Picturi Interior</a></div></li>
<li id="b2"><div><a href="">Modele Propuse</a></div></li>
<li id="b3"><div><a href="">Design Interior</a></div></li>
<li id="b4"><div><a href="">Web Design</a></div></li>
<li id="b5"><div><a href="">Obiecte Decorative</a></div></li>
</ul>
如果对您有帮助,这是切换脚本:
$.fn.exchangePositionWith = function(selector) {
var other = $(selector);
this.after(other.clone());
other.after(this).remove();
};
$(document.body).on('click', 'ul#java li' ,function(){
var pos = $(this).closest('li').index();
$("ul#java li:eq("+pos+")").exchangePositionWith("ul#java li:eq(0)");
});
这是列表的原始 CSS:
#java li{
display:inline-block;
width:149px;
height:67px;
margin-left:13px;
padding-top:40px;
text-align:center;
}
如果您认为我的问题或我的解释不完整,请随时问我。