我正在尝试在页面完全加载后选择页面上的第一个链接,并将页面重定向到第一页上的链接。
我理解如何使用选择器,但是我很难理解如何在页面加载后拾取第一个项目。我假设一旦我拥有了我可以使用的价值
window.location = "http://www.google.com/"
一旦我拥有动态链接的值,然后将用户带到正确的页面。
答案 0 :(得分:4)
jQuery(document).ready(function() {
window.location = jQuery("a[href]:first").attr("href");
});
具有:first
伪类的选择器选择第一个匹配的元素。有关选择器的更多信息,请查看jQuery's excellent documentation。
修改强>
实际运行我的代码并发现它返回一个空字符串。这是因为它正在拾取第一个{em>而具有a
属性的href
标记。我已将选择器更改为仅选择具有a
属性的href
标记。
答案 1 :(得分:3)
对于您的选择器,请先使用:这将为您提供页面上的第一个锚标记。然后,您可以将位置设置为锚标记的href属性。
类似的东西:
location = $("a:first").attr("href");
答案 2 :(得分:2)
我会指出重定向很容易被击败。不要依赖这个“安全”。
您可能还会发现需要第一个实际拥有href的锚点
$("a[href]:first").attr("href");
答案 3 :(得分:1)
您是否在页面的脚本标记中偶然使用此语法?
$(document).ready(function(){
// Your code here
});
答案 4 :(得分:0)
$(document).ready(function(){
$('a').each(function(){
if($(this).attr('href').indexOf('http')==0) {
window.location = $(this).attr('href');
}
});
});
此代码将起作用,因为: 它确保页面不会采用静态锚标记()并将其误认为是链接。如果它以http:开头,它将只使用该链接。如果不是,它将转到下一次出现的标记。