Причина, по которой вы не получаете смещение, заключается в том, что элементы span встроены. Чтобы решить эту проблему, добавьте следующий код в раздел head вашей HTML-страницы:
<style>
.offsetFixed {
display: inline-block;
}
#outerSpan {
display: block;
-webkit-user-select: text;
}
#as_cursor {
padding: 0;
margin: 0;
width: 0;
}
</style>
Дополнительно внесите следующие изменения в ваш HTML:
<span class="offsetFixed" id="outerSpan" as="0">"[TEXT]"
<span class="offsetFixed" id="as_cursor"></span>"[TEXT]"
</span>
Затем вы можете использовать jQuery для получения правильного смещения:
$(document).ready(function () {
var offset = $("#as_cursor").offset();
alert(JSON.stringify(offset));
});