realmente no se puede hacer esto de una manera sensata. El problema fundamental es que no hay forma en que los navegadores recuperen el HTML original enviado por el servidor; innerHTML
a menudo es diferente de alguna manera porque es una representación del DOM del navegador analizado desde el HTML original en lugar de un fragmento del HTML original.
Es posible recuperar información sobre la selección del usuario en todos los navegadores principales pero esta información se expresa en términos de nodos en el DOM del navegador en lugar de desplazamientos relativos a una cadena que contiene el HTML original enviado por el servidor.
En todo caso, su mejor opción es recuperar la fuente HTML de nuevo a través de Ajax y realizar análisis HTML complicados para hacer coincidir el DOM del navegador con la cadena HTML, que no es trivial. También podría ser imposible si el script que se ejecuta en su página ha modificado el DOM en el momento en que recibe la fuente HTML. Sugiero tratar de encontrar otra forma de lograr lo que quieres.
¿qué quiere decir con 'en el código fuente html?' –
¿Por qué necesita este número? –