gpt4 book ai didi

javascript - 仅在导航部分搜索文本?

转载 作者:行者123 更新时间:2023-12-02 14:33:34 24 4
gpt4 key购买 nike

我正在尝试编写一个用户脚本,以便在我每天使用的网站上自动登录。

我希望脚本首先检查我是否登录,然后仅在我注销时执行其余部分。

var content = document.body.textContent;
var hasText = content.indexOf("Login")!==-1;
if(hasText){
document.getElementById("useremail").value = "mymail@gmail.com";
document.getElementById("userpassword").value = "mypassword123";
}

我的代码几乎可以工作,它只有在整个源代码中寻找“登录”文本的问题。即使我已登录,通常也在那里。我希望搜索部分仅在导航(菜单)中查找。我怎样才能做到这一点?

如果我已注销:菜单(导航)列表(li)之一是“登录”。如果我已登录,该菜单将显示我的用户名(因此网站的导航部分中没有登录)。

该网站的来源如下:

<body>
<section id="main-header" class="headersclass">
<div class="container">
<header>
<div class="menusdiv">
<nav class="mainmenu">
<ul>
<li class="menulisting">
<li class="menulisting">
<li class="menulisting">
</ul>
</nav>
</div>
</header>
</div>
</section>
...random text of the site...
...the word "Login" can appear anywhere...
</body>

我尝试将脚本的第一行更改为下一行,但总是出错:

var content = document.body.nav.textContent;

var content = document.body > nav.textContent;

var content = document.body.section.div.header.div.nav.textContent;

var content = document.querySelectorAll('nav').textContent;

var content = document.getElementsByTagName("nav").textContent;

var lookhere = document.getElementsByTagName("nav");
var content = lookhere.textContent;

最佳答案

您需要使用这种方式:

var content = document.getElementsByClassName("mainmenu")[0].textContent;

或者,就像您尝试访问的方式一样:

var content = document.getElementsByTagName("nav")[0].textContent;

这些函数返回一个HTMLNodeList,它就像一个数组,您需要获取第一个元素。

关于javascript - 仅在导航部分搜索文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37645121/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com