我的 jQuery“展示” - 不透明度问题:)

发布于 2024-10-15 17:23:37 字数 342 浏览 2 评论 0原文

我有一堆照片,我正在寻找使用 jQuery 在同一位置显示它们的最佳方式。

你觉得我的概念怎么样?它是否有效,或者除了将所有图像放在一起并使用不透明度之外,也许还有其他方法?

无论如何,我不知道为什么这段代码:

jQuery('#demo img .'+itemClass).animate({不透明度: 1});

没有显示任何东西。有什么援助之手吗?

http://jsfiddle.net/d4sEW/1/

I am having a bunch of photos and I'm looking for best way of displaying them at the same place using jQuery.

What do you think of my concept? Is it valid or maybe there are other ways than putting all images on each other and playing with opacity?

Anyways I don't know why this code:

jQuery('#demo img
.'+itemClass).animate({opacity: 1});

Doesn't show a thing. Any helping hand?

http://jsfiddle.net/d4sEW/1/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

苦笑流年记忆 2024-10-22 17:23:37

我很确定类名不能以数字开头,但即便如此,如果您的图像具有特定的类,则必须使用 img.'+itemClass 而不是 img 。 '+itemClass;您在 img 选择器和类之间放置一个空格。

除此之外,您必须删除/淡出您不想显示的图像,否则一张图像可能会显示在您不想显示的图像后面。

I´m pretty sure class names can´t start with a number, but even so, if your image has a certain class, you have to use img.'+itemClass instead of img .'+itemClass; you put a space between the img selector and the class.

Apart from that you will have to remove / fade-out the images that you don´t want to show as otherwise one image can show behind an image you don´t want to show.

你的心境我的脸 2024-10-22 17:23:37

好的,这就是我为它工作所做的:

  • 删除此处的空格: jQuery('#demo img .'+itemClass)jQuery('#demo img.'+itemClass)< /code>
  • 我还建议您在显示所需图像之前隐藏图像(如果您选择图像,假设#3,然后再次选择第一个图像,则不会显示,因为第三个图像位于其上方)

Ok this is what I did for it to work:

  • Remove a space here: jQuery('#demo img .'+itemClass) to jQuery('#demo img.'+itemClass)
  • I would also recommend you hide the images before showing the desired one (if you select an image, lets say #3, and then select the first image again, it wont be displayed since the 3rd is over it)
⊕婉儿 2024-10-22 17:23:37

对了几个问题。

更新: http://jsfiddle.net/d4sEW/7/

  • .attr('class ') - 这是错误的,没有属性类,它是 .attr('className')
  • 您需要将其他不透明度切换为 0,否则以堆栈顶部的为准如果
  • 您希望它看起来正确,您将需要仔细选择要淡入和淡出的图片,或者在淡入之前淡出很多图片,如演示中所示
  • ,您需要关闭 < 之间的空间code>img 和类,否则它将查找一个类作为图像的后代,而不是图像的一部分:$('img.class')

Right a few problems.

Updated: http://jsfiddle.net/d4sEW/7/

  • .attr('class') - this is wrong, there is no attribute class, it's .attr('className')
  • you need to switch the other opacities to 0, otherwise whichever is on top of the stack will show
  • if you want that to look right, you will need to either carefully pick which pictures to fade in and out, or fade the lot out prior to fading in, as shown in the demo
  • also, you need to close the space between img and the class, otherwise it looks for a class as a descendant of the image, not a part of it: $('img.class')
绳情 2024-10-22 17:23:37

img 和 itemClass 之间有拼写错误(没有空格)。
它应该看起来像这样:

jQuery('#navi a').click(function(){
  var itemClass = jQuery(this).attr('class');
  $('#demo img').animate({opacity:0});
  jQuery('#demo img.'+itemClass).animate({opacity: 1});
  //alert(itemClass);
});

You have typo(no space) between img and itemClass.
it should looks like this :

jQuery('#navi a').click(function(){
  var itemClass = jQuery(this).attr('class');
  $('#demo img').animate({opacity:0});
  jQuery('#demo img.'+itemClass).animate({opacity: 1});
  //alert(itemClass);
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文