Javascript 如何检测具有相同ID的已单击div文本
这是我对所有div使用相同id“#peoplelayer”的代码,当我单击其中一个div时,它会提醒具有相同id的该div的所有文本Javascript 如何检测具有相同ID的已单击div文本,javascript,jquery,html,Javascript,Jquery,Html,这是我对所有div使用相同id“#peoplelayer”的代码,当我单击其中一个div时,它会提醒具有相同id的该div的所有文本 我如何为这个问题辩护,因为我只需要提醒单击的div,而且我需要给这个div提供相同的id???id是唯一的,所以不能有两个元素具有相同的id。也许你想使用类 将id='peoplelayer'更改为class='peoplelayer',您可以使用以下代码: $(document).ready(function(){ $('#peoplelayer').
我如何为这个问题辩护,因为我只需要提醒单击的div,而且我需要给这个div提供相同的id???id是唯一的,所以不能有两个元素具有相同的id。也许你想使用类 将
id='peoplelayer'
更改为class='peoplelayer'
,您可以使用以下代码:
$(document).ready(function(){
$('#peoplelayer').click(function(){
$("#peoplelayer").each(function(){
$("#peoplelayer").fadeOut(500);
var str = $(this).text();
alert(str);
//$("#peoplelayer").fadeTo(500,0.6);
});
});
});
ID是唯一的,因此不能有两个具有相同ID的元素。也许你想使用类 将
id='peoplelayer'
更改为class='peoplelayer'
,您可以使用以下代码:
$(document).ready(function(){
$('#peoplelayer').click(function(){
$("#peoplelayer").each(function(){
$("#peoplelayer").fadeOut(500);
var str = $(this).text();
alert(str);
//$("#peoplelayer").fadeTo(500,0.6);
});
});
});
可以使用与所需类名相同的图像。但是您的页面上只能有一个具有给定
id
的图像。元素的id是唯一的。您可以使用与所需类名相同的as图像。但是您的页面上只能有一个具有给定id
的图像。元素的id是唯一的。您需要做的是将它们更改为类
因此,不要使用id=“peoplelayer”
,而是改为class=“peoplelayer”
,然后您可以这样编写它。我做了一些改变,我想这会符合你的要求
$(document).ready(function(){
$('.peoplelayer').click(function(){
$(this).each(function(){
$(this).fadeOut(500);
var str = $(this).text();
alert(str);
//$(".peoplelayer").fadeTo(500,0.6); (I know it's commented, but just in case)
});
});
});
您需要做的是将它们更改为类 因此,不要使用
id=“peoplelayer”
,而是改为class=“peoplelayer”
,然后您可以这样编写它。我做了一些改变,我想这会符合你的要求
$(document).ready(function(){
$('.peoplelayer').click(function(){
$(this).each(function(){
$(this).fadeOut(500);
var str = $(this).text();
alert(str);
//$(".peoplelayer").fadeTo(500,0.6); (I know it's commented, but just in case)
});
});
});
您的问题是事件处理程序中的每个事件(以及在应该使用类的地方使用ID)。将元素更改为具有
class=“peoplelayer
,然后您可以简单地编写:
$('.peoplelayer').click(function(){
var str = $(this).text();
$('.peoplelayer').fadeTo(500,0.6);
$(this).fadeOut(500);
alert(str);
});
click函数将将相同的click处理程序附加到每个元素,每个元素的类为
peoplelayer
,因此,您在单击处理程序中所做的操作不必要,并且每次单击任何元素时都会显示每个元素的文本。您的问题是事件中的每个元素处理程序(以及在应该使用类的位置使用ID)。将元素更改为具有class=“peoplelayer
,然后您可以简单地编写:
$('.peoplelayer').click(function(){
var str = $(this).text();
$('.peoplelayer').fadeTo(500,0.6);
$(this).fadeOut(500);
alert(str);
});
click函数会将相同的click处理程序附加到每个元素上,每个元素都有一个
peoplelayer
类,因此在click处理程序中执行的每个都是不必要的,并且每次单击任何元素时都会显示每个元素的文本。,你可以使用类并在它们上使用js。
但是您可以选择与$相同id的div(“div[id='peoplelayer'])
P.S.给两个元素赋予相同的id不是一个好的做法。
例如好吧,你可以使用类并在类上使用js。
但是您可以选择与$相同id的div(“div[id='peoplelayer'])
P.S.给两个元素赋予相同的id不是一个好的做法。
例如,ID必须是唯一的。改为使用类。您的标记无效,因此代码的行为未定义。ID必须唯一。改为使用类。您的标记无效,因此代码的行为未定义。