尝试使用 JQuery 单击 <a> link 但标签没有任何描述符
Trying to click an <a> link using JQuery but the tag doesn't have any descriptors
我想点击 http://www.furaffinity.net/view/33063264/ 网站上的 link,但是 <a>
元素没有描述因素,所以我不知道如何正确找到它。这可能会被设置为我的其他问题的副本,但是,这将更具描述性和组织性。
JSFiddle:https://jsfiddle.net/60obtL8v/
我曾尝试使用 JQuery 定位元素,但没有成功。我不知道我的代码是否有误。我已经删除了代码,很想再次找到它,但是我做不到。
我的 JS 脚本:
// ==UserScript==
// @name Say "Very Nice!"
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Say "Very Nice" on a post by clicking the button.
// @author You
// @match https://www.furaffinity.net/view/*
// @match http://www.furaffinity.net/view/*
// @match www.furaffinity.net/view/*
// @grant none
// ==/UserScript==
function addButton(text, onclick, cssObj) {
cssObj = cssObj || {position: 'absolute', bottom: '15%', left:'4%', 'z-index': 3}
let button = document.createElement('button'), btnStyle = button.style
document.body.appendChild(button)
button.innerHTML = text
button.onclick = onclick
Object.keys(cssObj).forEach(key => btnStyle[key] = cssObj[key])
return button
}
(function(){
'use strict'
window.addEventListener('load', () => {
addButton('Very Nice!', gfg_Run)
})
var el_down = document.getElementById("JSMessage");
var inputF = document.getElementById("JSMessage");
var yeet = document.getElementsByClassName('button');
var inputH = document.getElementsByTagName("a");
function gfg_Run() {
inputF.value = "Very Nice!";
el_down.innerHTML =
"Value = " + "'" + inputF.value + "'";
yeet[0].click();
inputH.click();
}
}())
我的预期结果是我可以通过单击页面其他位置的按钮来单击 <a>
标记。我什至不知道如何定位该元素,因为它位于 <div>
和 <b>
元素下。
页面 HTML 的示例:
<div class="alt1 actions aligncenter" style="margin-top: 8px;">
This is what i would like to click right here. --->
<b><a href="/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0">+Add to Favorites</a></b> |
<b><a href="//d.facdn.net/art/legacy2988/stories/1569252982/1569252982.legacy2988_i’m_not_sure_atm.txt">Download</a></b> |
<b><a href="/full/33151503/">Full View</a></b> | <b><a href="/newpm/legacy2988/">Send note</a></b>
<div>Submission © 2019 Legacy2988</div>
</div>
希望我正确地组织了这个问题。
代码看起来像纯 JS,但在 jQuery 中,您可以使用属性 select 或 select href 并执行操作:
jQuery('a[@href*=/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0]');
或
$('a[@href*=/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0]');
我想点击 http://www.furaffinity.net/view/33063264/ 网站上的 link,但是 <a>
元素没有描述因素,所以我不知道如何正确找到它。这可能会被设置为我的其他问题的副本,但是,这将更具描述性和组织性。
JSFiddle:https://jsfiddle.net/60obtL8v/
我曾尝试使用 JQuery 定位元素,但没有成功。我不知道我的代码是否有误。我已经删除了代码,很想再次找到它,但是我做不到。
我的 JS 脚本:
// ==UserScript==
// @name Say "Very Nice!"
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Say "Very Nice" on a post by clicking the button.
// @author You
// @match https://www.furaffinity.net/view/*
// @match http://www.furaffinity.net/view/*
// @match www.furaffinity.net/view/*
// @grant none
// ==/UserScript==
function addButton(text, onclick, cssObj) {
cssObj = cssObj || {position: 'absolute', bottom: '15%', left:'4%', 'z-index': 3}
let button = document.createElement('button'), btnStyle = button.style
document.body.appendChild(button)
button.innerHTML = text
button.onclick = onclick
Object.keys(cssObj).forEach(key => btnStyle[key] = cssObj[key])
return button
}
(function(){
'use strict'
window.addEventListener('load', () => {
addButton('Very Nice!', gfg_Run)
})
var el_down = document.getElementById("JSMessage");
var inputF = document.getElementById("JSMessage");
var yeet = document.getElementsByClassName('button');
var inputH = document.getElementsByTagName("a");
function gfg_Run() {
inputF.value = "Very Nice!";
el_down.innerHTML =
"Value = " + "'" + inputF.value + "'";
yeet[0].click();
inputH.click();
}
}())
我的预期结果是我可以通过单击页面其他位置的按钮来单击 <a>
标记。我什至不知道如何定位该元素,因为它位于 <div>
和 <b>
元素下。
页面 HTML 的示例:
<div class="alt1 actions aligncenter" style="margin-top: 8px;">
This is what i would like to click right here. --->
<b><a href="/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0">+Add to Favorites</a></b> |
<b><a href="//d.facdn.net/art/legacy2988/stories/1569252982/1569252982.legacy2988_i’m_not_sure_atm.txt">Download</a></b> |
<b><a href="/full/33151503/">Full View</a></b> | <b><a href="/newpm/legacy2988/">Send note</a></b>
<div>Submission © 2019 Legacy2988</div>
</div>
希望我正确地组织了这个问题。
代码看起来像纯 JS,但在 jQuery 中,您可以使用属性 select 或 select href 并执行操作:
jQuery('a[@href*=/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0]');
或
$('a[@href*=/fav/33151503/?key=37dfe6a83f38f48790a6551921ddb13850e2c6a0]');