<div class='post_item'> <div class='post_item_body'> <h3> <a href='//baidu.com'>链接</a> </h3> </div> </div> <div class='post_item'> <div class='post_item_body'> <h3> <a href='//baidu1.com'>链接</a> </h3> </div> </div> <div class='post_item'> <div class='post_item_body'> <h3> <a href='//baidu2.com'>链接</a> </h3> </div> </div> <div class='post_item'> <div class='post_item_body'> <h3> <a href='//baidu3.com'>链接</a> </h3> </div> </div> <div class='post_item'> <div class='post_item_body'> <h3> <a href='//baidu4.com'>链接</a> </h3> </div> </div>
// let els = $('.post_item h3 a').get() // // console.log(els) // els.forEach(item=>{ // console.log(item.href) // }) // console.log(document.querySelector('a').tagName) let els = document.querySelectorAll('.post_item') let elArr = Array.from(els) let isArray = function (b) { return Object.prototype.toString.call(b).slice(8, -1) === 'Array' } function findHref(arrays) { if (isArray(arrays) && arrays.length) { Array.from(arrays).forEach(item => { if (item.tagName === 'DIV') { findHref(Array.from(item.children)) } else if (item.tagName === 'H3') { findHref(Array.from(item.children)) } else { console.log(item.href) } }) } } findHref(elArr)
油猴代码
// ==UserScript== // @name 博客园首页a链接地址 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 博客园首页a链接地址 // @author You // @match https://www.cnblogs.com/legacy // @icon https://www.google.com/s2/favicons?domain=undefined.localhost // @require http://code.jquery.com/jquery-migrate-1.2.1.min.js // @grant none /* globals jQuery, $, waitForKeyElements */ // ==/UserScript== (function() { 'use strict'; let els = $('.post_item h3 a').get() els.forEach(item=>{ console.log(item.href) }) // Your code here... })();
原生方法
let els = document.querySelectorAll('.small-item a') els.forEach(item=>{ console.log(item.href) })