Javascript 如何获取第一个内部元素?
因此,我想获得此Javascript 如何获取第一个内部元素?,javascript,jquery,Javascript,Jquery,因此,我想获得此中的第一个标记。这真让我发疯。谢谢你的帮助 HTML <div id="PGD" class="album" onmouseover="load(this)"> <a class="dl" href="#">DOWNLOAD</a> </div> 请参阅findjQuery命令 $('#PGD').find('a:first
中的第一个
标记。这真让我发疯。谢谢你的帮助
HTML
<div id="PGD" class="album" onmouseover="load(this)">
<a class="dl" href="#">DOWNLOAD</a>
</div>
请参阅find
jQuery命令
$('#PGD').find('a:first')
事实上,我不理解这个问题,所以我正在尝试更正您的函数,让您明白:
function load(dl)
{
// var ID = $(dl).attr('id');
// var elemnt = $('ID:first').attr('id'); // Here is error-mast be like $(ID+':first')
var ID = $(dl).attr('id');
var elemnt = $(ID).find('*:first').attr('id');
}
我提供了dl
即$('#PGD')
。但是子元素A
没有属性id
,您要查找什么
另见:
这将为您提供第一个子级“a”标记,但不会提供子级标记。例如
<div id="log">
<p><a href="foo">Foo</a></p>
<a href="hello">Hello</a>
<a href="how">Hello</a>
</div>
将为您提供:
非jQuery:(以前未使用jQuery标记,因此我将其包括在内)
- 如果只想获取第一个子元素:
var element = document.getElementById('PGD').children[0];
- 如果要获取第一个锚元素:
var element = document.getElementById('PGD').getElementsByTagName('a')[0];
var element = $('#PGD').find('a:first');
// or, to avoid jQuery's pseudo selecors:
// var element = $('#PGD').find('a').first();
实际上你的函数可以是
function load(dl)
{
var element = $(dl).find('a:first');
}
更新:
在使用jQuery时,我建议不要在HTML标记中附加click处理程序。以jQuery的方式执行此操作:
$(function() {
$("#PGD").mouseover(function() {
$(this).find('a:first').attr('display','inline');
alert($(this).find('a:first').attr('display'));
});
});
以及您的HTML:
<div id="PGD" class="album">
<a class="dl" href="#">DOWNLOAD</a>
</div>
你自己看看:是的,我试过了,但还是不起作用。我不打算做第二个,因为它不够动态。你可以安装chrome、firefox或safari通过控制台输出你的对象。在那之后,你会更清楚。PS:在Chrome中是Ctrl+Iyes,我试过这个。没有爱。我试图做的是将链接的display属性从none设置为inline。所以我在做你所做的关于.attr()attached.function load(dl){var element=$(dl).find('a:first').attr('display','inline');}@creocare:请看我更新的答案。前一个也应该可以,但可能您没有在全局范围中定义
load
。始终查看浏览器的控制台以检查错误。如果有带有“display:none”的锚定标记,只需在jQuery中的元素上使用show()函数。除非必要,否则无需修改“显示样式”属性。谢谢您的帮助。我以前也从未见过jsfiddle.net,所以这很酷。
function load(dl)
{
var element = $(dl).find('a:first');
}
$(function() {
$("#PGD").mouseover(function() {
$(this).find('a:first').attr('display','inline');
alert($(this).find('a:first').attr('display'));
});
});
<div id="PGD" class="album">
<a class="dl" href="#">DOWNLOAD</a>
</div>