Nut 发表于 2022-6-20 12:52:59

怎么劫持原点击事件改成复制url

document.querySelector(".HorizontalFeedCard__title.color-link-content-primary")
劫持页面上这个元素的点击事件,改成把herf的网址复制到粘贴板
劫持、更改点击事件、复制到粘贴板都会,就是合在一起,怎样实现点击之后复制点击元素的url实在没有头绪。原链接https://www.ixigua.com/

cxxjackie 发表于 2022-6-20 12:53:00

Nut 发表于 2022-6-20 14:41
这就不是很清楚了,反正打印出来的是下层元素,然后加上href打印就是undefined,如果是上级元素,应该是 ...

跟事件的捕获冒泡有关,你都有element了直接element.href就行了,不要去取e.target。

李恒道 发表于 2022-6-20 13:30:12

推荐是observemutation元素,检测到这个a标签就加个click函数然后删除掉href由你自身函数接管

Nut 发表于 2022-6-20 13:40:18

李恒道 发表于 2022-6-20 13:30
推荐是observemutation元素,检测到这个a标签就加个click函数然后删除掉href由你自身函数接管 ...

// ==UserScript==
// @name         搜索
// @namespace    http://tampermonkey.net/
// @version      0.1
// @descriptiontry to take over the world!
// @author       You
// @match      https://www.ixigua.com/search/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=ixigua.com
// @grant      GM_setClipboard
// ==/UserScript==

(function() {
document.querySelectorAll(".HorizontalFeedCard__title.color-link-content-primary").forEach(element =>{
        element.addEventListener("click",(e)=>{
        e.preventDefault()
        GM_setClipboard(e.target.innerHTML)
        })
    })
})();
原本抄了一个代码,原理上基本实现,就是把innerHTML换成herf就不行了,抄得一知半解得{:4_115:}{:4_115:}

李恒道 发表于 2022-6-20 13:41:52

Nut 发表于 2022-6-20 13:40
原本抄了一个代码,原理上基本实现,就是把innerHTML换成herf就不行了,抄得一知半解得{:4_115 ...

取他的href属性
算attrs里的

Nut 发表于 2022-6-20 14:19:16

李恒道 发表于 2022-6-20 13:41
取他的href属性
算attrs里的

![\[\[)5{1)CK\]2F3VM)HC8YQ1L.png](data/attachment/forum/202206/20/141807fbqg444j00bjlj2g.png)
打印了一下发现了问题,它获取到了下面的span,所以没有href。但我的class没打错啊,为什么会获取到下面的span去了

李恒道 发表于 2022-6-20 14:25:16

Nut 发表于 2022-6-20 14:19
![\[\[)5{1)CK\]2F3VM)HC8YQ1L.png](data/attachment/forum/202206/20/141807fbqg444j00bjlj2g.png)
...

你是咋打印的
innerhtml?

Nut 发表于 2022-6-20 14:27:00

李恒道 发表于 2022-6-20 14:25
你是咋打印的
innerhtml?

console.log(e.target)

李恒道 发表于 2022-6-20 14:30:59

Nut 发表于 2022-6-20 14:27
console.log(e.target)

下层点击我记着也会响应到上级的

Nut 发表于 2022-6-20 14:41:14

李恒道 发表于 2022-6-20 14:30
下层点击我记着也会响应到上级的

这就不是很清楚了,反正打印出来的是下层元素,然后加上href打印就是undefined,如果是上级元素,应该是一串url
页: [1] 2
查看完整版本: 怎么劫持原点击事件改成复制url