Así que estoy tratando de seleccionar un div en función de dos condiciones, una de las cuales es un prefijo.
entonces si tengo
<div class="bob delay-10"></div> <div class="joe delay-20"></div>quiero tener
function getdelay (classname) { let delayselect = document.querySelector("*[class='"+classname+"'], *[class*='delay-']"); return delayselect; } getdelay("joe"); debería devolver <div class="joe delay-20"></div>
Actualmente, la forma en que funciona es seleccionando OR no AND .
¿Cómo puedo arreglar esto?
Use un selector de clase real ( . ) para la parte del nombre de clase fijo.
let delayselect = document.querySelector(`.${classname}[class*='delay-']`);Los acentos graves ("literales de plantilla") permiten una inclusión más sencilla de expresiones en cadenas.