繁体   English   中英

获取<a>标签</a>的内部HTML

[英]Get the inner HTML of an <a> tag

我正在为响应页面构建一个动态菜单,其中使用slicknav解决方案隐藏了左侧菜单并变成了另一个菜单。

现在,我要做的是使左侧菜单的第一个链接成为菜单的标题。

由于菜单是硬编码的,因此无法提供需要ID的标记,因此我需要其他解决方案来查找其内部HTML。

这是我拥有的HTML:

<ul id="child_nav">
<li class="nav-title"><a href="#">My List title</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 3</a></li>
<li><a href="#">Item 4</a></li>
</ul>

这就是我能够通过一些编程来使菜单的标签成为上面的HTML中的“我的列表标题”的方式:

<script type="text/javascript">
$(document).ready(function(){
var E = document.getElementsByClassName('nav-title').innerHTML;

        $('#child_nav').slicknav({
            label: E
        });
});
</script>

我想念什么?

getElementsByClassName复数形式 ,它返回具有给定类名称的所有元素,因此它返回NodeList而不是单个HTML元素。

您需要将其像一个数组一样对待,或者将第一项从数组中拉出,或者使用for对其进行循环。

另外,由于您使用的是jQuery,因此只需使用jQuery。 html()方法将为您提供jQuery对象中第一个元素的内部HTML。

jQuery('.nav-title').html()

这应该完成它:

var myLabel = $('.nav-title:first').html()

由于您已经在使用jQuery,请使用其选择器查找单个元素,而不是getElementsByClassName ,它可以返回多个元素。

$("#child_nav li.nav-title:first a").text();

小提琴: http : //jsfiddle.net/KrFs9/

尝试像

$(".child_nav li a:first").html()
<script type="text/javascript">
    $(document).ready(function(){

        var title = $('#child_nav .nav-title a:first').html();

        $('#child_nav').slicknav({
            label: title
        });
    });
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM