Estoy trabajando en un pequeño proyecto en el que me gustaría leer cuántas veces un jugador específico ha matado a un monstruo. Puedo crear la mayoría de los selectores (nombre del monstruo, nombre del jugador) cuando uso document.querySelector o document.querySelectorAll. Pero cuando quiero recuperar la cantidad de muertes, estoy atascado. También busque en Google selectores de texto sin formato o texto sin marcado HTML. Lamentablemente no tengo resultados.
Para que os hagáis una idea de cómo queda os daré un pequeño ejemplo. El HTML se ve exactamente así, pero luego tienes una lista de nombres de 6 jugadores y para cada jugador la cantidad de muertes para este monstruo específico.
<table> <tr> <td><b>Name of the monster</b></td> <td><b><a href="#">Name of the player</a></b>"Amount of kills"<br></td> </tr> </table>Entonces quiero obtener el selector del texto que menciona la Cantidad de muertes. Luego convertiré esta cadena en un número.
Mi idea es crear un rastreador para ver lo que los jugadores realmente están buscando. Por ejemplo, el jugador X mata a 500 dragones, entonces quiero que mi script muestre esto.
¡Gracias por adelantado! :)
Aquí hay una manera:
const cell = document.querySelector('table tr td:last-child'); console.log([...cell.childNodes].filter(n=>n.nodeType===3).pop().nodeValue); <table> <tr> <td><b>Name of the monster</b></td> <td><b><a href="#">Name of the player</a></b>"Amount of kills"<br></td> </tr> </table>Encuentra la celda de la tabla que necesita y lee todos los childNodes (esto incluye textNodes (nodeType es 3 entonces)), filtra todos los textNodes y abre el último, leyendo su valor.