在 javscript 使用 querySelectorAll() 选择元素并添加尝试使用 . 或类添加它们时。在该时刻访问具有索引值的 node list 元素intellisense 不会 work 或 highlight dom 元素的方法或属性。
*我希望 dom 属性在选择节点列表元素或形成元素列表的元素时出现在javascipt中。
让我们尝试这种方式,当使用 querySelectorAll() 选择元素,然后尝试使用点符号 (.) 访问它们或访问它们的类时,您可能不会收到有关 DOM 元素的属性或方法的 IntelliSense 建议。可能会发生这种情况,因为 querySelectorAll() 返回一个 NodeList,它不是数组,并且不会自动授予对 DOM 元素的属性和方法的访问权限。
要在使用 querySelectorAll() 选择的 DOM 元素上获得完整的 IntelliSense,您可以执行以下操作:
将 NodeList 转换为数组:
const elements = document.querySelectorAll('.your-selector');
const elementArray = Array.from(elements);
现在,您可以访问数组中的元素并获得完整的 IntelliSense:
// Access the first element in the array
const firstElement = elementArray[0];
// Now IntelliSense should suggest properties and methods of the DOM element:
firstElement.textContent = 'New text'; // Example of using a property
firstElement.classList.add('new-class'); // Example of using a method
关键是将 NodeList 转换为数组,以便您可以像访问数组元素一样访问元素,从而接收完整的 IntelliSense。如果有效的话请告诉我如何使用。