Javascript jQuery";“与团队会面”;影响
我正在尝试为创建jQuery效果。 这个想法是,在鼠标上,其他照片都在“看”选定的一张。下面是html代码Javascript jQuery";“与团队会面”;影响,javascript,jquery,arrays,onmouseover,Javascript,Jquery,Arrays,Onmouseover,我正在尝试为创建jQuery效果。 这个想法是,在鼠标上,其他照片都在“看”选定的一张。下面是html代码 <ul class="team"> <li><img src="pics/team/t-0001.jpg" alt=""/></li> <li><img src="pics/team/t-0002.jpg" alt=""/></li> <li><img src="p
<ul class="team">
<li><img src="pics/team/t-0001.jpg" alt=""/></li>
<li><img src="pics/team/t-0002.jpg" alt=""/></li>
<li><img src="pics/team/t-0003.jpg" alt=""/></li>
...
</ul>
...
理论上我理解,当鼠标在其中一个li元素上时,我必须更改其他元素中图像的src值。需要几个数组来存储这些路径
但在实践中,我遇到了很大的问题
我应该先做什么?可能有一些例子或插件
我将感谢任何帮助
谢谢你的帮助!抱歉,无法提前回答,有很多工作要做 我找到了解决办法。它非常简单,也不太灵活,但它可以工作。我使用的是背景图像。以下是示例 放置一张带有显示块、正常图像宽度和高度的“双”图像,并将css位置更改为负片和背面。 注意:为了便于jQuery选择,我在每个图像中添加了class=“smart” 放置一张带有显示块、正常图像宽度和高度的“双”图像,并将css位置更改为负片和背面。
注意:为了便于jQuery选择,我在每个图像中添加了class=“smart”好吧,我建议您使用json而不是常规数组。。。为什么?您可以为给定的json对象分配一个用户名,该用户名包含该用户的所有图像,其他用户也包含相同的内容,然后在鼠标上循环通过该用户json对象。 假设你有这样一个物体
myvalues = [{"userone":['srcone','srctwo'],"usertwo":['srcone','srctwo']}]
u像这样迭代它
for (var key in myvalues) {
var obj = myvalues[key];
for (var prop in obj) {
alert("User:"+prop+" Valueone: "+obj[prop][0]+" Valuetwo:"+obj[prop][1]);
}
}
好吧,我建议您使用json而不是常规数组。。。为什么?您可以为给定的json对象分配一个用户名,该用户名包含该用户的所有图像,其他用户也包含相同的内容,然后在鼠标上循环通过该用户json对象。 假设你有这样一个物体
myvalues = [{"userone":['srcone','srctwo'],"usertwo":['srcone','srctwo']}]
u像这样迭代它
for (var key in myvalues) {
var obj = myvalues[key];
for (var prop in obj) {
alert("User:"+prop+" Valueone: "+obj[prop][0]+" Valuetwo:"+obj[prop][1]);
}
}
一种简化问题的方法是,不让每个人都有9张图片,实际上是让每个人都有一张合成图片,而且有各种可能。 在一幅图像中,可能会出现类似的情况(箭头显示了该人应该看的方向): 这使您可以通过CSS更改图像的背景位置(使用由图像大小确定的规则间隔)来改变方向。 它还有一个好处,就是可以同时加载一个面的所有可能性,而不是在面发生变化时加载(这可能会导致图像闪烁或需要预加载) 然后,您必须计算每个面使用哪个图像,这取决于它与选定面之间的相对位置。 这是坐标之间的算术比较问题 因此,如果您对选定的面迭代所有面,那么如果当前的Y高于选定的Y,那么它将是前三个“子图像”之一,然后您将比较X,看看它是否小于、等于或大于,以确定这三个图像中的哪一个。 这同样适用于所有三行可能的面。
最终,它归结为比较Y和X的较小、相等或较大值。通过这种方式,您可以计算背景位置中X和Y的偏移量。一种简化问题的方法是,不需要每个人都有9张图像,而实际上每个人都有一张合成图像,这是所有可能的。 在一幅图像中,可能会出现类似的情况(箭头显示了该人应该看的方向): 这使您可以通过CSS更改图像的背景位置(使用由图像大小确定的规则间隔)来改变方向。 它还有一个好处,就是可以同时加载一个面的所有可能性,而不是在面发生变化时加载(这可能会导致图像闪烁或需要预加载) 然后,您必须计算每个面使用哪个图像,这取决于它与选定面之间的相对位置。 这是坐标之间的算术比较问题 因此,如果您对选定的面迭代所有面,那么如果当前的Y高于选定的Y,那么它将是前三个“子图像”之一,然后您将比较X,看看它是否小于、等于或大于,以确定这三个图像中的哪一个。 这同样适用于所有三行可能的面。
最终,它归结为比较Y和X的较小、相等或较大值。这样,您就可以计算背景位置中X和Y的偏移量。对于初学者,您可以看到该站点的实现。。查看源。@KseniaMurach用一个示例编辑我的文章,以启动u。他们是否应该跟随鼠标或查看“悬停选定”的图像(当鼠标位于两个图像之间时会发生什么情况)?你能给我们看一下从列表中生成网格的CSS吗(单元格有固定的比率吗)?它们不跟随鼠标,只看“悬停选定”的图像。当鼠标位于两个图像之间时,不会发生任何事情。所有列表元素都有固定的宽度和高度。@KseniaMurach使用工作示例和fiddle进行了更新。对于初学者,您可以看到该站点的实现。。查看源。@KseniaMurach用一个示例编辑我的文章,以启动u。他们是否应该跟随鼠标或查看“悬停选定”的图像(当鼠标位于两个图像之间时会发生什么情况)?你能给我们看一下从列表中生成网格的CSS吗(单元格有固定的比率吗)?它们不跟随鼠标,只看“悬停选定”的图像。当鼠标位于两个图像之间时,不会发生任何事情。所有列表元素都有固定的宽度和高度。@KseniaMurach使用工作样本和小提琴更新