I don't know if it is a concern - that would be up to you I guess. This definitely seems like a topic for a new thread, but I would be happy with the way you are doing things. The only other possibility would be to actually measure the space taken up and decide how many pixels you want to dedicate. The example below gives 400px to the text before cutting it off and adding the dots. If you want to change that you have to do it in the "content" css and the checkLength function... it seems like more trouble than it's worth, but it was an interesting little exercise...
<span class="content" id="span1"></span></br>
<span class="content" id="span2"></span>
el.parentNode.insertBefore( dots, el.nextSibling );
var str="an incredibly long piece of text that just seems to go on and on and on and doesn't really have to be this long but that's the way it came out anyway";
var str2="quite a short string";