gpt4 book ai didi

javascript - 用 Greasemonkey 替换 div 类中的 float

转载 作者:行者123 更新时间:2023-11-29 22:20:04 25 4
gpt4 key购买 nike

首先,我有一些 JavaScript 经验,但主要是客户端脚本编写,而不是 Web 环境中的 JavaScript。

我要做的是获取并替换此类中的值:

<div class="detailPrice" style="float:left;width:180px"> € 20,90* </div>

每个页面的值都在变化。所以我无法搜索这个特定的值。当我得到值时,我想将它分配给一个变量,比如

price = 20.9

对其进行一些计算,然后用旧值替换我的新值。

提前感谢您的任何帮助。

最佳答案

使用 querySelectorAll() 获取 div,如果您对格式相当确定,则使用正则表达式提取价格。
下面的正则表达式说明了常见的欧洲和美国格式,但假设小数点右边有两位数。

See the code in action at jsFiddle.

var priceDivs   = document.querySelectorAll ("div.detailPrice");
for (var J = priceDivs.length - 1; J >= 0; --J) {
var oldPriceParts = priceDivs[J].textContent.match (/^(?:\s|\D)*([0-9\.,]*)(\d{2})\D*$/);
if (oldPriceParts.length === 3) {
var newPrice = parseInt ('0' + oldPriceParts[1].replace (/[\.,]/g, ""), 10)
+ parseInt (oldPriceParts[2], 10) / 100
;
// DO WHATEVER MANIP YOU WANT HERE.
newPrice = newPrice * 1.3;

priceDivs[J].textContent = '€ ' + newPrice.toFixed (2).toLocaleString ();
}
else {
console.log ("**Unexpected price format!** ", priceDivs[J]);
}
}

关于javascript - 用 Greasemonkey 替换 div 类中的 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12919152/

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