js获取所有li里面a标签的href
时间: 2023-11-17 12:04:23 浏览: 94
可以使用以下代码获取所有li里面a标签的href:
```javascript
var links = document.querySelectorAll('li a');
var hrefs = Array.prototype.map.call(links, function(link) {
return link.getAttribute('href');
});
console.log(hrefs);
```
这段代码会将所有li里面a标签的href存入一个数组中,并打印在控制台上。
相关问题
jquery页面,点击li里面的a标签页面跳转,让当前a标签激活添加背景色和颜色,其它a标签恢复初始状态
可以使用jQuery实现这个功能。首先,我们可以给每个a标签添加一个点击事件,然后在事件处理程序中执行以下操作:
1. 阻止默认的跳转行为。
2. 移除所有a标签的背景色和颜色。
3. 给当前点击的a标签添加背景色和颜色。
4. 获取a标签的href属性,并使用window.location.href跳转到对应的页面。
以下是示例代码:
```javascript
$('li a').click(function(event) {
event.preventDefault(); // 阻止默认的跳转行为
$('li a').removeClass('active'); // 移除所有a标签的背景色和颜色
$(this).addClass('active'); // 给当前点击的a标签添加背景色和颜色
window.location.href = $(this).attr('href'); // 跳转到对应的页面
});
```
在CSS中定义.active类的样式,以实现选中状态的样式效果。
```css
.active {
background-color: #ccc;
color: #fff;
}
```
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } ul { list-style: none; } .mi { position: relative; width: 223px; margin: 100px auto; } .mi input { width: 223px; height: 48px; padding: 0 10px; font-size: 14px; line-height: 48px; border: 1px solid #e0e0e0; outline: none; } .mi .search { border: 1px solid #ff6700; } .result-list { display: none; position: absolute; left: 0; top: 48px; width: 223px; border: 1px solid #ff6700; border-top: 0; background: #fff; } .result-list a { display: block; padding: 6px 15px; font-size: 12px; color: #424242; text-decoration: none; } .result-list a:hover { background-color: #eee; } </style> </head> <body> <div class="mi"> <input type="search" placeholder="小米笔记本" /> <ul class="result-list"> <li><a href="#">全部商品</a></li> <li><a href="#">小米11</a></li> <li><a href="#">小米10S</a></li> <li><a href="#">小米笔记本</a></li> <li><a href="#">小米手机</a></li> <li><a href="#">黑鲨4</a></li> <li><a href="#">空调</a></li> </ul> </div> <script> // 获取元素 const input = document.querySelector("[type=search]"); const ul = document.querySelector(".result-list"); // 监听事件 获取焦点 input.addEventListener("focus", function () { ul.style.display = "block"; // 添加一个带有颜色边框的类名 input.classList.add("search"); }); // 监听事件 失去焦点 input.addEventListener("blur", function () { ul.style.display = "none"; // 移除 input.classList.remove("search"); }); </script> </body> </html> 鼠标点击下拉框里面的内容时,上面的搜索框出现鼠标点击的内容
您可以使用JavaScript来实现当鼠标点击下拉框中的内容时,将其显示在搜索框中。您可以尝试以下代码:
```javascript
// 获取元素
const input = document.querySelector("[type=search]");
const ul = document.querySelector(".result-list");
// 监听事件 鼠标点击
ul.addEventListener("click", function (e) {
if (e.target.tagName === "A") {
input.value = e.target.textContent;
}
});
```
将此代码添加到您的HTML文件的`<script>`标签中即可。这样,当用户点击下拉框中的内容时,搜索框中将显示所点击的内容。