Sandbox3: Difference between revisions
mNo edit summary |
(bing writes his first bookmarklet) |
||
Line 2: | Line 2: | ||
BitCoin | BitCoin | ||
atxt-> https://www.trankynam.com/atext/ | atxt-> https://www.trankynam.com/atext/ | ||
<html> | |||
javascript: (() => { | |||
// Get all the text nodes in the document | |||
let textNodes = document.evaluate("//text()", document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); | |||
// Loop through each text node | |||
for (let i = 0; i < textNodes.snapshotLength; i++) { | |||
let node = textNodes.snapshotItem(i); | |||
// Split the text by whitespace and punctuation | |||
let words = node.data.split(/[\s,.!?;:()'"`]+/); | |||
// Loop through each word | |||
for (let word of words) { | |||
// Check if the word is camel case | |||
if (word.match(/^[a-z]+[A-Z][a-zA-Z]*$/)) { | |||
// Replace the word with a span element that has an underline style | |||
node.data = node.data.replace(word, `<span style="text-decoration: underline;">${word}</span>`); | |||
} | |||
} | |||
} | |||
})(); | |||
</html> |
Revision as of 20:41, 19 October 2023
test RedeSchrift BitCoin atxt-> https://www.trankynam.com/atext/
javascript: (() => { // Get all the text nodes in the document let textNodes = document.evaluate("//text()", document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); // Loop through each text node for (let i = 0; i < textNodes.snapshotLength; i++) { let node = textNodes.snapshotItem(i); // Split the text by whitespace and punctuation let words = node.data.split(/[\s,.!?;:()'"`]+/); // Loop through each word for (let word of words) { // Check if the word is camel case if (word.match(/^[a-z]+[A-Z][a-zA-Z]*$/)) { // Replace the word with a span element that has an underline style node.data = node.data.replace(word, `${word}`); } } } })();