私はこのバージョンの lavalamp jquery プラグインを使用しています。旅行リンクに ( TRAVEL - >DOMESTIC | INTERNATIONAL | SPACE | DARK AGES | GOLDEN ERA ) などのオプションを含むサブメニューがあり、トップに移動できるようにしたいと考えています。 -レベルの travel.htmlページ。
Travel は travel.html にリンクし、DOMESTIC、INTERNATIONAL、SPACE、DARK AGES、GOLDEN ERAはすべてそれぞれのページにリンクする必要があります。
そんなに難しくないと思っていたのに、なぜかやりきれない。
どうもありがとう。
編集: コードの追加
HTML
<ul class="lavaLampWithImage" id="1">
<li><a href="#">Home</a></li>
<li><a href="products.html" >Travel</a>
<div>
<ul>
<li><a href="domestic.html">Domestic</a></li>
<li><a href="international.html">International</a></li>
<li><a href="space.html">Space</a></li>
<li><a href="dark-ages.html">Dark Ages</a></li>
<li><a href="golden-era.html">Golden Era</a></li>
</ul>
</div>
</li>
<li><a href="#">Travel</a></li>
<li><a href="#">Ride an elephant</a></li>
</ul>
<script type="text/javascript">
$(function() {
$("#1").lavaLamp({
speed: 700,
click: function(event, menuItem) {
return true;
}
});
});
</script>
ジャバスクリプト
(function($) {
$.fn.lavaLamp = function(o) {
o = $.extend({ fx: "linear", speed: 500, click: function(){} }, o || {});
return this.each(function() {
var me = $(this), noop = function(){},
$back = $('<li class="back"><div class="left"></div></li>').appendTo(me),
$li = $("li", this), curr = $("li.current", this)[0] || $($li[0]).addClass("current")[0];
$li.not(".back").hover(function() {
move(this);
}, noop);
$(this).hover(noop, function() {
move(curr);
});
$li.click(function(e) {
setCurr(this);
return o.click.apply(this, [e, this]);
});
setCurr(curr);
function setCurr(el) {
$back.css({ "left": el.offsetLeft+"px", "width": el.offsetWidth+"px" });
curr = el;
};
function move(el) {
$back.each(function() {
$.dequeue(this, "fx"); }
).animate({
width: el.offsetWidth,
left: el.offsetLeft
}, o.speed, o.fx);
};
});
};
})(jQuery);
CSS
.lavaLampWithImage {
position: relative;
height: 29px;
width: 421px;
background: url("bg.gif") no-repeat top;
padding: 15px;
margin: 10px 0;
overflow: hidden;
}
.lavaLampWithImage li {
float: left;
list-style: none;
}
.lavaLampWithImage li.back {
background: url("lava.gif") no-repeat right -30px;
width: 9px; height: 30px;
z-index: 8;
position: absolute;
}
.lavaLampWithImage li.back .left {
background: url("lava.gif") no-repeat top left;
height: 30px;
margin-right: 9px; /* 7px is the width of the rounded shape */
}
.lavaLampWithImage li a {
font: bold 14px arial;
text-decoration: none;
color: #fff;
outline: none;
text-align: center;
top: 7px;
text-transform: uppercase;
letter-spacing: 0;
z-index: 10;
display: block;
float: left;
height: 30px;
position: relative;
overflow: hidden;
margin: auto 10px;
}
.lavaLampWithImage li a:hover, .lavaLampWithImage li a:active, .lavaLampWithImage li a:visited {
border: none;
}
私が基本的に達成しようとしていたのは、Travelの最初のレベルのメニュータブをリンクしtravel.html
て、travel.html
.