Uncaught DOMException: Failed to execute 'querySelectorAll' on 'Document': '.0CsRxEXJZz1685969591027' is not a valid selector.
时间: 2023-07-11 11:31:09 浏览: 265
这个错误是因为类名以数字开头,而在 CSS 中,选择器不能以数字开头。你需要在类名前添加一个合法的字符来修复这个问题。比如,可以在类名前添加一个字母:
```javascript
var url = window.location.href;
console.log(url);
var site = url.lastIndexOf("/");
var letter_id = url.substring(site + 1, url.length);
letter_id = "l" + letter_id; // 在类名前添加一个字母
console.log(letter_id);
var elements = document.querySelectorAll("." + letter_id);
for (var i = 0; i < elements.length; i++) {
elements[i].style.color = "red";
}
```
这样就可以避免类名以数字开头的问题了。
相关问题
content.js:1 Uncaught DOMException: Failed to execute 'getRangeAt' on 'Selection': 0 is not a valid index怎么处理
这个错误通常是因为没有正确地选择文本导致的。您可以尝试在使用 `getRangeAt` 方法之前检查选区是否存在,并且选区范围内的起始点和结束点是否正确。例如:
```javascript
const selection = window.getSelection();
if (selection.rangeCount > 0) {
const range = selection.getRangeAt(0);
// 处理选中的文本范围
} else {
// 没有选中文本
}
```
如果您在使用 `getRangeAt` 方法时仍然遇到问题,那么可能是因为您的代码中的其他部分也在操作选区,导致选区范围不正确。您可以通过调试代码来找到问题所在。
Uncaught DOMException: Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.
这个错误通常是因为你调用了 JavaScript 中的 atob() 方法,但传入的字符串不是正确的 base-64 编码。你需要确保传入的字符串是 base-64 编码的,否则无法解码。你可以尝试使用 btoa() 方法将字符串编码为 base-64 编码,然后再使用 atob() 方法进行解码。如果问题仍然存在,可以检查字符串是否包含非法字符(例如空格或换行符),或者尝试使用其他解码方法。
阅读全文