たぶん下記のような具合でしょう …
<script type="text/javascript">
<!--
var objNakami;
var objHidden;
var objLink;
function myLoad()
{
objNakami = document.getElementById("nakami");
if ( objNakami.childNodes.length == 1 ) {
objHidden = document.createElement("INPUT");
objHidden.value = objNakami.innerText;
// 何文字目かは substringの引数を調整してください
objNakami.innerText = objNakami.innerText.substring( 0, 7 ) + "...";
objHidden.type ="hidden";
objNakami.appendChild( objHidden );
// いろは歌と リンクの間に改行が必要なら
// objNakami.appendChild( document.createElement( "<br>" ) );
objLink = document.createElement("A")
objLink.innerText = "続きを表示";
objLink.href = "javascript:myLoad();";
objNakami.appendChild( objLink );
} else {
var ss = objHidden.value;
objNakami.removeChild( objHidden );
objNakami.removeChild( objLink );
objNakami.innerText = ss;
}
}
//-->
</script>
</head>
<body onload="myLoad();">
お礼
回答ありがとうございます。 目標に近づいてきました! あとは、元文にタグが含まれていても機能すると最高なのですが、難しそうですね・・・
補足
こちらを参考に <script type="text/javascript"> <!-- var objNakami; var objHidden; var objSwit var flagdayo = 1; window.onload=function myLoad() { objNakami = document.getElementById("nakami"); objSwit = document.getElementById("swit"); if ( flagdayo == 1 ) { objHidden = document.createElement("INPUT"); objHidden.value = objNakami.innerText; // 何文字目かは substringの引数を調整してください objNakami.innerText = objNakami.innerText.substring( 0, 7 ) + "..."; objHidden.type ="hidden"; objNakami.appendChild( objHidden ); flagdayo = 0; objNakami.appendChild( document.createElement( "<br>" ) ); objSwit.innerText = "続きを表示"; objSwit.href = "javascript:myLoad();"; } else { var ss = objHidden.value; objNakami.removeChild( objHidden ); objNakami.innerText = ss; objNakami.appendChild( document.createElement( "<br>" ) ); objSwit.innerText = "閉じる"; flagdayo = 1; } } // --> </script> </head> <body> <div id="nakami"> いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす </div> <a id="swit"></a> </body>