现在问过这个问题,但我无法得到答案。我有一个Lavalamp里面有4个LI,点击它们每个都会在div中加载一些内容。
一切正常。现在我在lavalamp之外的同一页面上有一个超链接。我想要的是,当我点击该链接时,lavalamp高亮显示应该移动到特定的li并保持在那里。
为了清楚自己,我有一个Lavalamp LI,它是这样的:Home,Work,About,Contact。我还在页面的某处有一个“联系”链接。当我点击“联系”链接时,lavaLamp应该将突出显示从第四个选项“联系”移动到其他位置。
答案 0 :(得分:1)
如果您使用this lavalamp plugin,则需要使用trigger()
来激活鼠标中心并点击事件......这里是demo。
HTML
<ul id="menu">
<li><a href="#home">Home</a></li>
<li><a href="#work">Work</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
<br>
<a class="contact" href="#contact">contact me!</a>
脚本
$(document).ready(function(){
$('ul#menu').lavaLamp();
$('.contact').click(function(){
$('#menu a[href*=contact]').parent().trigger('mouseenter').trigger('click');
return false; // added to prevent propogation
});
});
大声笑,好吧,因为你正在使用另一个lavalamp插件......这里是你可以使用的代码。此外,由于lavaplamp插件提供了点击功能,我通过在那里添加函数(new demo)使javascript不引人注目。
HTML
<ul class="lavalamp">
<li class="current"><a href="#home">Home</a></li>
<li><a href="#work">Work</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
<br><br><br>
<div id="home" class="info">
Home page stuff goes here.
</div>
<div id="work" class="info">
Work information goes here.
</div>
<div id="about" class="info">
About me.
</div>
<div id="contact" class="info">
Contact me.
</div>
<br><br><br>
<div class="links">
You can see my <a href="#work">work</a> or <a href="#contact">contact me.</a>
</div>
脚本
$(function() {
// set up lavalamp
$(".lavalamp").lavaLamp({
fx: "backout",
speed: 700,
click: function(event, menuItem) {
// change information box
var $block = $( $(menuItem).find('a').attr('href') );
$('.info').not($block).hide();
$block.fadeIn();
return false;
}
});
// initialize information box
$('.current').trigger('click');
// make links outside of the lavalamp work
$('.links a').click(function(){
var block = $(this).attr('href');
$('.current').removeClass('current');
$('.lavalamp').find('a[href=' + block + ']').parent().trigger('click');
});
});
答案 1 :(得分:0)
好一些细节。这是lavalamp和它外面的超链接。
<ul class="lavaLamp">
<li><a href="javascript:content(1)">Home</a></li>
<li><a href="javascript:content(2)">Work</a></li>
<li><a href="javascript:content(3)">About</a></li>
<li><a href="javascript:content(4)">Contact</a></li>
</ul>
---
<div class="info">
// Corresponding information will be loaded here based on javascript:content(num)
<div>
---
<div>
You can see my <a href="javascript:content(2)">work</a> or <a href="javascript:content(4)">contact me.</a>
</div>
现在内容加载得很好。但是当我点击“工作”或“联系我”链接时,我也希望lavaLamp中的荧光笔移动到相应的LI。即分别为“工作”和“联系”。
我使用的是此处的LavaLamp版本:http://gmarwaha.com/blog/?p=7