zeigen mehr/Weniger text nur mit HTML und JavaScript
Ich bin benötigen, erstellen Sie eine Karte mehr/weniger text-Funktion, aber nur mit JavaScript und HTML.. ich kann nicht mit zusätzlichen Bibliotheken wie jQuery und kann es nicht mit CSS. Der Beispiel-code den ich eingegeben habe, zeigt das "mehr" text, aber nicht die 'weniger'.
Wenn jemand könnte mich in die richtige Richtung, es wäre sehr geschätzt werden.
Habe ich damit verbracht, den größten Teil des Tages braten mein Gehirn über diese, wie seine eindeutig nicht der moderne Weg, es zu tun, aber mein HTML ist:
<html>
<head>
<script type="text/javascript" src="moreless.js"></script>
</head>
<body>
Lorem ipsum dolor sit amet
<p>
<p id="textarea"><!-- This is where I want to additional text--></div>
</p>
<a onclick="showtext('text')" href="javascript:void(0);">See More</a>
<p>
Here is some more text
</body>
</html>
und meine JavaScript (moreless.js):
function showtext()
{
var text="Here is some text that I want added to the HTML file";
document.getElementById("textarea").innerHTML=text;
}
Warum brauchen Sie, um es so zu machen?
Die Antworten unterscheiden sich angemeldete mehr detail von Ihren Anforderungen. Wenn Ihr text wird statisch sein und nicht woanders wiederholt. Man könnte Umschalten, die
Die Antworten unterscheiden sich angemeldete mehr detail von Ihren Anforderungen. Wenn Ihr text wird statisch sein und nicht woanders wiederholt. Man könnte Umschalten, die
display
wie in @akhikhl Antwort. Dies ist wahrscheinlich erfordert die geringste Menge an code?InformationsquelleAutor Conrad M | 2013-12-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meine Antwort ist ähnlich, aber anders, es gibt ein paar Möglichkeiten, das zu erreichen Umschalten Effekt. Ich denke, es hängt von Ihren Umständen. Dies ist möglicherweise nicht der beste Weg für Sie am Ende.
Das fehlende Stück, das Sie gesucht haben, ist das erstellen einer
if
- Anweisung. Dies ermöglicht Ihnen, wechseln Sie Ihre text.Mehr auf, wenn Aussagen hier.
JSFiddle: http://jsfiddle.net/8u2jF/
Javascript:
InformationsquelleAutor Mal
Mit einigen HTML-änderungen, können Sie absolut erreichen, das mit CSS:
Gepaart mit der CSS:
JS Fiddle demo.
Oder könnten Sie ein
label
und eininput
vontype="checkbox"
:Mit CSS:
JS Fiddle demo.
:target
im CSS vor. Cool.InformationsquelleAutor David Thomas
Dies ist mein reines HTML & Javascript-Lösung:
Können Sie dann rufen modifyDomElements Funktion anwenden text kürzen auf alle Elemente, die verkürzen-text-Klasse name. Dafür würden Sie brauchen, um geben Sie den Namen der Klasse und der Höhe, die Sie möchten Ihr Elemente gekürzt werden:
Schließlich in Ihre html -, setzen Sie einfach den Namen der Klasse auf das element, das Sie möchten Ihr text kürzen:
InformationsquelleAutor Hamid
Versuchen zu wechseln Höhe.
InformationsquelleAutor shawnzhu
Dies sollte Ihr problem beheben:
Den gesamten Arbeitsbereich Beispiel ist hier: http://jsfiddle.net/akhikhl/zLA5K/
InformationsquelleAutor akhikhl
Hoffe, dieser Code, den Sie suchen
HTML:
SKRIPT:
InformationsquelleAutor DropAndTrap
wenn mehr div verwenden, wie Sie diese änderung nur 1 bis 2
demo
jsfiddle
InformationsquelleAutor user3383017
Ich bin kein Experte, aber ich habe eine Menge suchen, um diese umzusetzen ist für mich. Ich fand etwas anderes, aber modifiziert, um dies zu erreichen. Eigentlich ist es ganz einfach:
Die Funktion nimmt zwei Argumente, ein div, das nur die Worte "zeige mehr" [oder was auch immer] und ein div mit der ursprünglich verborgenen text und die Worte "zeigen Sie weniger." Die Funktion zeigt das einem div und versteckt die anderen.
HINWEIS: Wenn mehr als eine Karte ein - /ausblenden auf Seite, weisen Sie unterschiedliche ids zu divs
Farben können geändert werden
Hier ist das Skript:
InformationsquelleAutor Thomas Keener