![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
<div id="nakami">
いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす
</div>
-----
が(今回8文字目以降隠すと仮定して)
-----
いろはにほへと...
続きを表示
-----
になって
続きを表示を押すと
--------
いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす
閉じる
-------
になるようなイメージです。
本文中にタグがあった場合でも上手く動作すると尚うれしいです。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
たぶん下記のような具合でしょう …
<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>
回答ありがとうございます。
目標に近づいてきました!
あとは、元文にタグが含まれていても機能すると最高なのですが、難しそうですね・・・
No.1
- 回答日時:
やりたい処理は、次のような事ですか。
----------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>サンプル</title>
<script type="text/javascript">
<!--
function cmd_hidden(id) {
var obj_short = document.getElementById(id + "_short");
obj_short.style.display = "block";
var obj_long = document.getElementById(id + "_long");
obj_long.style.display = "none";
}
function cmd_visible(id) {
var obj_short = document.getElementById(id + "_short");
obj_short.style.display = "none";
var obj_long = document.getElementById(id + "_long");
obj_long.style.display = "block";
}
// -->
</script>
</head>
<body>
<div id="nakami_short" style="display: block;">
いろはにほへと...<br>
<a href="javascript:void(0);" onclick="return cmd_visible('nakami');">続きを表示</a>
</div>
<div id="nakami_long" style="display: none;">
いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす<br>
<a href="javascript:void(0);" onclick="return cmd_hidden('nakami');">閉じる</a>
</div>
</body>
</html>
回答ありがとうございます。
動作としてはこのような感じです。
これと同じような動作を
いろは歌を二つ用意するのではなく、
元の完全な文を指定文字数以降jsにより隠したいのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 哲学 川端康成の掌編小説 《神います》より問います。 7 2022/11/13 04:25
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- 哲学 《やみ(〈自由〉の止み)から やまひ(病ひ)へ》考 4 2022/03/31 04:16
- 哲学 ウソの問題 理論編:《虚数人間》の成り立ちについて 2 2022/05/23 22:25
- 哲学 ウソをともなう悪に片向くことは 煮詰めて言えば 善であり愛である――悪の共同自治へ向けて―― 0 2023/01/12 08:45
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- 文学 古文の解説をお願いします 1 2023/07/02 09:34
- 哲学 《うそ》の問題――《虚数》にたとえられるか? 15 2023/05/10 22:23
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[急ぎ] videoタグで埋め込んだm...
-
IFRAMEの表示/非表示を切り替え...
-
createElementで作成した要素を...
-
ラジオボタンの切替で表示する...
-
jQueryでクリックされた要素のi...
-
背景色を一定時間ごとにランダ...
-
MAX関数を使ってからLEFT JOIN...
-
JSで動的にリンクを作成
-
CSSで指定したwidthをマウスで...
-
removeEventListenerについて
-
getElementByIdの戻り値がnull...
-
クリックで特定のdiv要素が表示...
-
背景色を透明化
-
指定字数以降隠す
-
innerTextで文字を変えたいので...
-
表示・非表示のスクリプトで、...
-
パララックスが出来ない。
-
javascriptでオブジェクトの重...
-
多次元配列を連想配列へ変換したい
-
ページの一部を隠したり開いた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MAX関数を使ってからLEFT JOIN...
-
javascriptテキストBOX色を元に...
-
読み込んだQRコードをフォーム...
-
createElementで作成した要素を...
-
removeEventListenerについて
-
クリックで色変更後に既に変更...
-
iframe内のリンクが飛ばないの...
-
[急ぎ] videoタグで埋め込んだm...
-
背景色を透明化
-
console.log結果をhtmlで表示し...
-
表示・非表示のスクリプトで、...
-
getElementByIdの戻り値がnull...
-
removeAttribute()メソッドで削...
-
テキストエリア内の一部の文字...
-
タブで開いてさらにタブ内をア...
-
IFRAMEの表示/非表示を切り替え...
-
変数内容をHTML内で表示する方法
-
HTMLタグに複数のクラスを設定...
-
jQueryのアコーディオンメニュ...
-
取得した要素がインライン要素...
おすすめ情報