嗨,怎么去url href =“#locations / 16381 / schedule? 它是href属性的值?对 一个元素“a”?右
如果我想通过找到属性为data-original-title =“Schedules”的“a”元素来获得此href 有可能吗?
我转身document.getElementById()
document.getElementsByTagName()
等等......我完全失去了..(我不得不说我此时只是在学习JS)。
这里是DOM:
<div id="filter-region" class="col-lg-3 col-md-3 col-sm-3 col-xs-12"><div>
</div></div>
<div id="list-region" class="col-lg-9 col-md-9 col-sm-9 col-xs-12"><div><div class="col-lg-4 col-md-4 col-sm-6 col-xs-12"><div class="well">
<div class="media">
<div class="media-left media-middle">
<a href="#locations/16381"><img src="https://api.staffomaticapp.com/system/logos/16381/api/Picture1.png?1451550438" width="51" height="51" class="img
-rounded media-object"></a>
</div>
<div class="media-body">
<h4 class="location-name"><a href="#locations/16381">Vélo</a></h4>
</div>
</div>
<ul class="clearfix list-inline location-navigation"><li><a title="" href="#locations/16381" data-original-title="Dashboard">
<i class="fa fa-tachometer fa-lg fa-fw"></i>
<span class="text">Dashboard</span>
</a>
</li><li><a title="" href="#locations/16381/schedules" data-original-title="Schedules">
<i class="fa fa-calendar fa-lg fa-fw"></i>
<span class="text">Schedules</span>
</a>
</li><li><a title="" href="#locations/16381/absences" data-original-title="Absences">
<i class="fa fa-plane fa-lg fa-fw"></i>
<span class="text">Absences</span>
</a>
```
我尝试几乎每个document.getElement()我都能找到lol ... 我试着学习jquery同时人们说它更容易... 但是在我的头脑中,一切都混淆了......
我的线索是我必须和父母和孩子一起玩 在我找到“a”元素之前......但还不够清楚......那就是它?
另外如果有人拿到“THE”教程或作弊表来玩DOM(从客户端的角度来看)我没有找到让我理解得好的人
感谢
编辑: 我几乎回答了我的问题...... $('TagOfElement')。get(NumberOfTheNode)给我$('a')。get(18).click()转到url是的jquery做了它
但我怎么能用data-original-title =“Schedules”找到呢?并在严格的JS?
将相同的帖子放在dom中访问元素的所有不同方式会是一件好事。
祝福的爱情
答案 0 :(得分:0)
这个问题很复杂,因为DOM不包含类或id,这会使搜索更容易。实际上,这是我解决它的方式(参见Javascript部分):
var links = document.getElementsByTagName("a");
var anchor, ref;
for (var element of links) {
if (element.getAttribute('data-original-title')=='Schedules') {
anchor = element;
ref = element.getAttribute('href');
}
}
console.log(anchor);
console.log(ref);
<div id="filter-region" class="col-lg-3 col-md-3 col-sm-3 col-xs-12"><div>
</div></div>
<div id="list-region" class="col-lg-9 col-md-9 col-sm-9 col-xs-12"><div><div class="col-lg-4 col-md-4 col-sm-6 col-xs-12"><div class="well">
<div class="media">
<div class="media-left media-middle">
<a href="#locations/16381"><img src="https://api.staffomaticapp.com/system/logos/16381/api/Picture1.png?1451550438" width="51" height="51" class="img
-rounded media-object"></a>
</div>
<div class="media-body">
<h4 class="location-name"><a href="#locations/16381">Vélo</a></h4>
</div>
</div>
<ul class="clearfix list-inline location-navigation"><li><a title="" href="#locations/16381" data-original-title="Dashboard">
<i class="fa fa-tachometer fa-lg fa-fw"></i>
<span class="text">Dashboard</span>
</a>
</li><li><a title="" href="#locations/16381/schedules" data-original-title="Schedules">
<i class="fa fa-calendar fa-lg fa-fw"></i>
<span class="text">Schedules</span>
</a>
</li><li><a title="" href="#locations/16381/absences" data-original-title="Absences">
<i class="fa fa-plane fa-lg fa-fw"></i>
<span class="text">Absences</span>
</a>
答案 1 :(得分:0)
如果有多个具有相同类的元素,则使用jquery:
$( "a" ).each(function( index ) {
if ($(this).data('original-title') =='Schedules' ){
var url = $(this).attr('href')
// do something
}
});
或:
var url2 = $("a[data-original-title=Schedules]").attr('href');
普通javascript:
var elements = document.getElementsByTagName('a');
for (var i = 0; i < elements.length; i++) {
var dataoriginal = elements[i].getAttribute('data-original-title');
if(dataoriginal == 'Schedules'){
var url3 = elements[i].getAttribute("href");
//do something
}
}