jQuery:显示相同的div

jQuery:显示相同的div,jquery,Jquery,在这种情况下: 我希望能够单击id为添加青色的my,并使id为todo青色的显示。和其他人一样 有人能帮我吗 我想要这些 <img src="img/cyan.png" width="45px" class="hidden" id="todo-cyan"/> <img src="img/magenta.png" width="45px" class="hidden" id="todo-magenta"/> <img src="img/yellow.png" wid

在这种情况下:

我希望能够单击id为添加青色的my,并使id为todo青色的显示。和其他人一样

有人能帮我吗

我想要这些

<img src="img/cyan.png" width="45px" class="hidden" id="todo-cyan"/>
<img src="img/magenta.png" width="45px" class="hidden" id="todo-magenta"/>
<img src="img/yellow.png" width="45px" class="hidden" id="todo-yellow"/>
<img src="img/black.png" width="45px" class="hidden" id="todo-black"/>
<img src="img/cyan.png" width="60px" height="60px" id="add-cyan"/>
<img src="img/magenta.png" width="60px" id="add-magenta"/>
<img src="img/yellow.png" width="60px" id="add-yellow"/>
<img src="img/black.png" width="60px"  id="add-black"/>

单击其下方的img时显示/向下滑动:


理想情况下,您应该使用类对
添加的
元素进行分组,这样您就不必使用
'[id^=“add-”]
特技

为了详细说明,我选择了ID以
add-
开头的所有元素:

$('[id^="add-"]')
然后添加一个单击处理程序,该处理程序从所有具有相应的
todo
ID的元素中删除
隐藏的
类:

$('#todo-' + this.id.replace('add-', '')).removeClass('hidden');
理想情况下,您应该使用类对
添加的
元素进行分组,这样您就不必使用
'[id^=“add-”]
特技

为了详细说明,我选择了ID以
add-
开头的所有元素:

$('[id^="add-"]')
然后添加一个单击处理程序,该处理程序从所有具有相应的
todo
ID的元素中删除
隐藏的
类:

$('#todo-' + this.id.replace('add-', '')).removeClass('hidden');

实际上,如果您只想复制单击的图像,那么甚至不需要两次定义所有这些图像。就这样

JavaScript

$(function() {
    $("img.add").click( function() {
        $("#todobar").empty().append( $(this).clone() );
    });
});​
$(function() {
    $("img.add").click( function() {
        var col = $(this).data("color");
        $("#todo-" + col).toggle();
    });
});​
CSS

修改的HTML

<div id="todobar">
</div>

<img src="img/cyan.png" class="add" alt="cyan"/>
<img src="img/magenta.png" class="add" alt="magenta"/>
<img src="img/yellow.png" class="add" alt="yellow"/>
<img src="img/black.png" class="add" alt="black"/>
<div id="todobar">
    <img src="img/cyan.png" class="hidden" id="todo-cyan"/>
    <img src="img/magenta.png" class="hidden" id="todo-magenta"/>
    <img src="img/yellow.png" class="hidden" id="todo-yellow"/>
    <img src="img/black.png" class="hidden" id="todo-black"/>
</div>

<img src="img/cyan.png" class="add" data-color="cyan" alt="cyan"/>
<img src="img/magenta.png" class="add" data-color="magenta" alt="magenta"/>
<img src="img/yellow.png" class="add" data-color="yellow" alt="yellow"/>
<img src="img/black.png" class="add" data-color="black" alt="black"/>
CSS

修改的HTML

<div id="todobar">
</div>

<img src="img/cyan.png" class="add" alt="cyan"/>
<img src="img/magenta.png" class="add" alt="magenta"/>
<img src="img/yellow.png" class="add" alt="yellow"/>
<img src="img/black.png" class="add" alt="black"/>
<div id="todobar">
    <img src="img/cyan.png" class="hidden" id="todo-cyan"/>
    <img src="img/magenta.png" class="hidden" id="todo-magenta"/>
    <img src="img/yellow.png" class="hidden" id="todo-yellow"/>
    <img src="img/black.png" class="hidden" id="todo-black"/>
</div>

<img src="img/cyan.png" class="add" data-color="cyan" alt="cyan"/>
<img src="img/magenta.png" class="add" data-color="magenta" alt="magenta"/>
<img src="img/yellow.png" class="add" data-color="yellow" alt="yellow"/>
<img src="img/black.png" class="add" data-color="black" alt="black"/>

实际上,如果您只想复制单击的图像,那么甚至不需要两次定义所有这些图像。就这样

JavaScript

$(function() {
    $("img.add").click( function() {
        $("#todobar").empty().append( $(this).clone() );
    });
});​
$(function() {
    $("img.add").click( function() {
        var col = $(this).data("color");
        $("#todo-" + col).toggle();
    });
});​
CSS

修改的HTML

<div id="todobar">
</div>

<img src="img/cyan.png" class="add" alt="cyan"/>
<img src="img/magenta.png" class="add" alt="magenta"/>
<img src="img/yellow.png" class="add" alt="yellow"/>
<img src="img/black.png" class="add" alt="black"/>
<div id="todobar">
    <img src="img/cyan.png" class="hidden" id="todo-cyan"/>
    <img src="img/magenta.png" class="hidden" id="todo-magenta"/>
    <img src="img/yellow.png" class="hidden" id="todo-yellow"/>
    <img src="img/black.png" class="hidden" id="todo-black"/>
</div>

<img src="img/cyan.png" class="add" data-color="cyan" alt="cyan"/>
<img src="img/magenta.png" class="add" data-color="magenta" alt="magenta"/>
<img src="img/yellow.png" class="add" data-color="yellow" alt="yellow"/>
<img src="img/black.png" class="add" data-color="black" alt="black"/>
CSS

修改的HTML

<div id="todobar">
</div>

<img src="img/cyan.png" class="add" alt="cyan"/>
<img src="img/magenta.png" class="add" alt="magenta"/>
<img src="img/yellow.png" class="add" alt="yellow"/>
<img src="img/black.png" class="add" alt="black"/>
<div id="todobar">
    <img src="img/cyan.png" class="hidden" id="todo-cyan"/>
    <img src="img/magenta.png" class="hidden" id="todo-magenta"/>
    <img src="img/yellow.png" class="hidden" id="todo-yellow"/>
    <img src="img/black.png" class="hidden" id="todo-black"/>
</div>

<img src="img/cyan.png" class="add" data-color="cyan" alt="cyan"/>
<img src="img/magenta.png" class="add" data-color="magenta" alt="magenta"/>
<img src="img/yellow.png" class="add" data-color="yellow" alt="yellow"/>
<img src="img/black.png" class="add" data-color="black" alt="black"/>


好吧,我道歉。但我不知道其中的[id^=“add-”]。我试着用一个按钮来做,但我很容易发现这是一个很大的无效代码。好吧,我道歉。但我不知道其中的[id^=“add-”]。我设法让一个按钮来做,但我很容易看到这将是一个巨大的无效代码。非常感谢!这似乎很容易,但我刚刚开始学习,所以我感谢你的帮助。你介意对你的剧本做一个简短的解释吗?这将极大地帮助我重写它:D@MagnusKristoffersen没关系。你应该看一些关于选择器的教程,关于jQuery还有很多东西我还在探索中。我添加了一个解释。我非常想学习!我擅长HTML、CSS和基本php,但刚刚开始使用jQuery和JavaScript。我正在使用Codeacademy:)非常感谢!这似乎很容易,但我刚刚开始学习,所以我感谢你的帮助。你介意对你的剧本做一个简短的解释吗?这将极大地帮助我重写它:D@MagnusKristoffersen没关系。你应该看一些关于选择器的教程,关于jQuery还有很多东西我还在探索中。我添加了一个解释。我非常想学习!我擅长HTML、CSS和基本php,但刚刚开始使用jQuery和JavaScript。我用的是Codeacademy:)@magnus没问题!事实上,我只是添加了一个更短的方法:)嘿,伙计,我还有另一套,数据纸=“a3-90”,我该如何实现这一点?我应该说我使用的是第一种方法,因为它可以切换@马格纳斯,没问题!事实上,我只是添加了一个更短的方法:)嘿,伙计,我还有另一套,数据纸=“a3-90”,我该如何实现这一点?我应该说我使用的是第一种方法,因为它可以切换!