Spring naar bijdragen

Aanbevolen berichten

Geplaatst

Ik ben bezig mijn geocache avonturen online te zetten, maar nu zie ik al doende dat er best vaak informatie in mijn bijgevoegde tekjsten staan die als spoiler gezien kunnen worden. Nu wil ik niet mijn teksten aanpassen, maar ik wilde spoiler zaken via ROT13 (het gc.com "codeersysteem") versleutelen.

 

Ik kom een end:

 

<script language="JavaScript">
function rot_13(obj)
{
 var keycode = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
 var text	= new String(obj.form.Text.value)
 var rot13 = new String()

 for(var i = 0; i < text.length; i++)
 {
var codechar = text.substring(i, i + 1)
var pos = keycode.indexOf(codechar.toUpperCase())

if(pos >= 0)
{
  pos	  = (pos + keycode.length / 2) % keycode.length
  codechar = (codechar == codechar.toUpperCase()) ?
			 keycode.substring(pos, pos + 1) :
			 keycode.substring(pos, pos + 1).toLowerCase()
}
rot13 = rot13 + codechar
 }
 obj.form.Text.value = rot13
}
</script>
<form>
<textarea name="Text" rows=10 cols=80 wrap=soft>Qvg vf rra fcbvyre</textarea><br>
<input type=button value="ROT-13 klik" onClick="rot_13(this)">
</form>

 

Maar... Dan heb ik dus zo'n lelijk tekstblok (form) op mijn pagina staan, meestal midden in een stuk tekst. Dat vind ik niet zo netjes staan.

 

Is er iemand die mij (kant en klaar !, want ik snap er errug weinig van) iets kan vertellen hoe ik midden in een tekst Qvg vf rra fcbvyre kan zetten, en dan en knop/link om dat gecodeerde stukkie in normaal te zetten ?

Geplaatst

Ik zie net dat "ergens anders" in dit geval bij Terracaching ze dit op de site werkend hebben. Hoe ze dat gedaan hebben snap ik dus niet.

Geplaatst

enfin, ik beantwoord mijn eigen vraag voor een deel:

 

										<table width=100%>
										<tr>
											<td valign=top id=encrypted_hint>
												<a href="java script:decryptHint()">(decrypt)</a><br>
												qvg vf mbznne rra uvag.
											</td>
											<td valign=top id=decrypted_hint style="display:none;">
												<a href="java script:encryptHint()">(encrypt)</a><br>
												dit is zomaar een hint.
											</td>
										</tr>
									</table>


					<script>
						function decryptHint() {
							document.getElementById('encrypted_hint').style.display = 'none';
							if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
								document.getElementById('decrypted_hint').style.display = 'table-row';
							} else {
								document.getElementById('decrypted_hint').style.display = 'block';
							}
						}
						function encryptHint() {
							document.getElementById('decrypted_hint').style.display = 'none';
							if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
								document.getElementById('encrypted_hint').style.display = 'table-row';
							} else {
								document.getElementById('encrypted_hint').style.display = 'block';
							}
						}
					</script>

 

Maar nu. En dit valt waarschijnlijk buiten de scope van dit forum:

 

Ik wil 'm zonder zodat de encode/decode link "buiten" staat. Dat kan nu wel, maar dan moet ik een hele lap tekst 2 keer ingeven en binnen de TD's zetten.

<benny joling voice: aan>Kan dat nou niet handiger ?</benny joing voice uit>

Geplaatst
<html>
<head>
<title>Test</title>
<style>.hintLink{text-decoration: underline; cursor: pointer}</style>
<script language="JavaScript">
function decrypt(obj)
{
 var keycode = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var text = new String(obj.innerHTML); var rot13 = new String();

 for(var i = 0; i < text.length; i++) {
var codechar = text.substring(i, i + 1); var pos = keycode.indexOf(codechar.toUpperCase())

if(pos >= 0) {
  pos	  = (pos + keycode.length / 2) % keycode.length
  codechar = (codechar == codechar.toUpperCase()) ? keycode.substring(pos, pos + 1) : keycode.substring(pos, pos + 1).toLowerCase()
}
rot13 = rot13 + codechar
 }
 obj.innerHTML = rot13
}
</script>
</head>
<body>
Hier kan een heleboel tekst staan. <span onclick="decrypt(this)" class="hintLink">Vapyhfvrs rra fghxwr rapelcgrq grxfg.</span> Bedoel je zoiets?
</body>
</html>

  • Onlangs hier   0 leden

    • Er kijken geen geregistreerde gebruikers naar deze pagina.
×
×
  • Nieuwe aanmaken...