Javascript 使用多个div单击按钮时显示div

Javascript 使用多个div单击按钮时显示div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,问题 你好!!当我点击按钮时,我想显示div,但问题是我有多个div和同一个类,我不知道如何调用每个div 那么你如何在图片中看到我有两个列表“个人”和“杂货店”,每个列表都有div“popup_information”。我想当我点击图片1中的按钮时,div是可视的。。不是两个,只是在我按下按钮的列表中。比如当我按下清单底部杂货清单上的按钮时,必须用按钮显示div 代码 html: 目前我不使用任何脚本,因为我现在不知道如何调用我需要的div 我的想法 因此,我的想法是在单击“更多”按钮时显示

问题

你好!!当我点击按钮时,我想显示div,但问题是我有多个div和同一个类,我不知道如何调用每个div

那么你如何在图片中看到我有两个列表“个人”和“杂货店”,每个列表都有div“popup_information”。我想当我点击图片1中的按钮时,div是可视的。。不是两个,只是在我按下按钮的列表中。比如当我按下清单底部杂货清单上的按钮时,必须用按钮显示div

代码

html:

目前我不使用任何脚本,因为我现在不知道如何调用我需要的div

我的想法


因此,我的想法是在单击“更多”按钮时显示弹出信息,但这对我来说并不简单,因为类“弹出信息”可以有多个div,我不知道使用每个div需要做什么。。如果有人能更新我的css或为此编写脚本,我将不胜感激,因为我不明白这必须如何工作…

如果您使用此代码,它将仅在父div中拾取命名类

this.parentNode.getElementsByClassName('popup_information')[0]
在你的例子中是
等等


。。。但是JM Yang的答案当然可能更合适,如果您使用此代码,它只在父div中拾取命名类

this.parentNode.getElementsByClassName('popup_information')[0]
在你的例子中是
等等


。。。但是JM Yang的答案当然可能更合适,如果您使用此代码,它只在父div中拾取命名类

this.parentNode.getElementsByClassName('popup_information')[0]
在你的例子中是
等等


。。。但是JM Yang的答案当然可能更合适,如果您使用此代码,它只在父div中拾取命名类

this.parentNode.getElementsByClassName('popup_information')[0]
在你的例子中是
等等


。。。但是杨洁篪的回答当然更合适,因为你使用的是Angular JS,所以可以用Angular的方式优雅地完成。单击按钮时,可以向列表中引入一个变量,以指示是否应显示div,然后在div上使用ng show引用该变量来确定是否应显示或隐藏该变量

角度模块('test',[]) .controller('MainCtrl',函数($scope){ $scope.listsdata={ 列表:[{id:1,名称:'list 1'},{id:2,名称:'list 2'},{id:3,名称:'list 3'}] }; });

:

因为您使用的是Angular JS,所以可以用Angular的方式优雅地完成。单击按钮时,可以向列表中引入一个变量,以指示是否应显示div,然后在div上使用ng show引用该变量来确定是否应显示或隐藏该变量

角度模块('test',[]) .controller('MainCtrl',函数($scope){ $scope.listsdata={ 列表:[{id:1,名称:'list 1'},{id:2,名称:'list 2'},{id:3,名称:'list 3'}] }; });

:

因为您使用的是Angular JS,所以可以用Angular的方式优雅地完成。单击按钮时,可以向列表中引入一个变量,以指示是否应显示div,然后在div上使用ng show引用该变量来确定是否应显示或隐藏该变量

角度模块('test',[]) .controller('MainCtrl',函数($scope){ $scope.listsdata={ 列表:[{id:1,名称:'list 1'},{id:2,名称:'list 2'},{id:3,名称:'list 3'}] }; });

:

因为您使用的是Angular JS,所以可以用Angular的方式优雅地完成。单击按钮时,可以向列表中引入一个变量,以指示是否应显示div,然后在div上使用ng show引用该变量来确定是否应显示或隐藏该变量

角度模块('test',[]) .controller('MainCtrl',函数($scope){ $scope.listsdata={ 列表:[{id:1,名称:'list 1'},{id:2,名称:'list 2'},{id:3,名称:'list 3'}] }; });

:

在回答您的附加问题“当我单击外部某处按钮隐藏”时,我猜您想要的是在div.popup\u信息打开时隐藏它,然后用户单击它外部的某处。您可以使用自定义指令侦听document onClick事件,并检查该事件是否来自div.popup\u信息内部。如果没有,并且div.popup_信息已打开,则更改$scope数据以隐藏它。下面的代码并不完美,但我希望它至少向您展示了如何通过使用自定义指令来实现这一点

请注意,我已经为$.contains()引入了jQuery

角度模块('test',[]) .controller('MainCtrl',函数($scope){ $scope.listsdata={ 清单:[{ id:1, 名称:“列表1” }, { id:2, 名称:“列表2” }, { id:3, 名称:“列表3” }] }; }) .directive(“closeOnOutsideClick”、[“$document”、函数($document){ 返回{ 链接:函数($scope、$element、$attrs){ var$toHide=$element.find($attrs.closeOnOutsideClick); 如果($toHide.length>0){ $document.on(“单击”),功能(事件){ 如果($toHide.is(':visible')&&&!$包含($element[0],event.target)){ $scope.lists.show=false; $scope.$apply(); } }) }; } } }]);

:
中的