okej är det någon som vet var man kan hitta en extremt bra javascript tutorial där d tar upp det mästa?......
ja har en till fråga, finns det någon function som i perl(stdin) att den väntar på att personen skriver något och trycker på enter och då lagrar det som en variabel.
åså en till fråga, hur gör man en sån där grej med smilies att när man klickar på en bild så skrivs automatiskt en liten bit ut i textarea t ex om om jag klickar på så skrivs ":)" ut i textarean.
HjÄlp!!!!
21 svar · 511 visningar · startad av patrik2002
okej är det någon som vet var man kan hitta en extremt bra javascript tutorial där d tar upp det mästa?......
**- Yahoo index
- Yahoo Index (svenskt)
- Netscape JavaScript 1.2
- Netscape JavaScript 1.3
- Netscape JavaScript 1.4
- MSDN JScript**
ja har en till fråga, finns det någon function som i perl(stdin) att den väntar på att personen skriver något och trycker på enter och då lagrar det som en variabel.
Ett litet exempel;
<script language="JavaScript" type="text/javascript">
string="";
function KeyUp(Event){
keycode=(document.layers)?Event.which:window.event.keyCode;
if(keycode>31&&keycode<127){
string+=String.fromCharCode(keycode);
} else if(keycode==13) {
alert(string);
}
}
if (document.layers){
document.captureEvents(Event.KEYUP);
}
document.onkeyup = KeyUp;
</script>
Istället för alert(string) kan du ju göra något annat roligt med strängen.
åså en till fråga, hur gör man en sån där grej med smilies att när man klickar på en bild så skrivs automatiskt en liten bit ut i textarea t ex om om jag klickar på så skrivs ":)" ut i textarean.
<a href="#" onClick="document.formulärsnamn.textareanamn.value+=':-)'; return false;"><img src="smilie.gif" border="0"></a>
tack...... men om jag vill att texten ska läggas i en pratbubbla som anpassas efter storleken då?
Kan du kanske förklar lite vad det är du har gjort..... det funkar precis som jag ville men det är det att jag vill förstå lite grann ja e ju nybörjare.....
Först deklarerar vi en tom sträng-variabel där vi senare kommer att lagra inmatad text. Sedan definierar vi en funtion som senare kommer att anropas när man trycker på någon tangent (eller rättare sagt släpper upp. Efter det kollar vi om gamla Netscape (4.x) dom'en används, i så fall måste vi tala om att vi vill hantera eventet keyup och sedan styr vi eventet onKeyUp till funktionen KeyUp. I den funktionen tilldelar vi variabeln keycode ett ascii-värde som representerar den tangent som trycktes ner (tilldelningen sker beroende på vilken dom som används). Efter det kollar vi om tecknet är något att bry sig om, escape, tabb, shift osv vill vi inte bry oss om. Ifall det är ett tecken vi gillar (beroende på dess ascii-värde) läggs tecknet som ascii-värdet representerar till sist i variabeln string. Är det return som trycks, som har ascii 13, skriver vi ut värdet av string i en alert-ruta.
men hur fixar man d där me pratbubblan då
Skapa ett lager med;
<div id="mittlager" style="position:absolute;top:120px;left:200px;visibility:hidden;"></div>
... och sedan kan du använda funktionerna showLayer(), hideLayer() och writeToLayer() från layerlib.js. Vill du ha en pratbubbla med runda hörn osv får du skriva en hel tabell med egnabilder och lägga in texten i mitten. Lite får du arbeta själv ;)
men hur gör jag för att kolla att det är t ex 10 bokstäver för att sedan lägga in bild 2 och fortsätta
vet du var jag kan lära mig det jag behöver veta för att göra en sådan bubbla
men det här fungerar inte:
"
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<script language="JavaScript" type="text/javascript" src="layerlib.js"></script>
<script language="JavaScript" type="text/javascript" src="stdiolib.js"></script>
<script language="JavaScript" type="text/javascript">
document.onclick=moveit;
function moveit(){
moveLayerAbs("mittlager",getMouseX(),getMouseY());
}
<script language="JavaScript" type="text/javascript">
string="";
function KeyUp(Event){
keycode=(document.layers)?Event.which:window.event.keyCode;
if(keycode>31&&keycode<127){
string+=String.fromCharCode(keycode);
} else if(keycode==13) {
writeToLayer("layer1","string");
}
}
if (document.layers){
document.captureEvents(Event.KEYUP);
}
document.onkeyup = KeyUp;
</script>
<?php
$bild= "<img src='C:/Program/vue4/Pictures/new island.bmp' height='100' width='100'>";
?>
<div id="mittlager" style=" position:absolute;top:131px;left:553px;width:121px;height:117px;pxoverflow:auto">
<?=$bild?>
<div id="layer1" style="position:absolute; width:149px; height:118px; z-index:1; left: -150px; top: -116px"> </div>
</div>
</body>
</html>
"
writeToLayer("layer1","string");
**Detta skriver alltså "string" till lagret layer1. Vill du skriva innehållet i variabeln string skall du inte ha med några citat-tecken.
Sedan föreslår jag att du inte använda lager i lager utan avslutar ett lager innan du öppnar ett annat. Då kommer det att fungera i Netscape 4.x också.
Till sist måste du ha layerlib.js samt stdiolib.js i samma katalog som dokumentet i fråga, ifall du inte redan har det. Annars funkar det.**
nu är det problemet VARKEN skrivningen till texten eller förflyttnings grejen fungerar :x kan du hjälpa mig jojoxx?
Ser en sak till. Du har lagt ihop 2 script, men <script language="JavaScript" type="text/javascript"> ligger kvar i mitten.
ahaaa.......nu funkar det...... men om jag lägger till en bubbla så när något skrivs ut så försvinner den och om ja har visibilty till hidden så vet ja inte hur man får den till synlig.....
tack på förhand
jag kom på en sak...... när användaren skriver något så ska han kunna se vad det är han skriver och medelandet ska vara kvar ända tills personen skriver något nytt..... sen vill ja lägga medelandet som en php variabel hur åsdakommer jag detta??
Vill du att texten skall synas medans man skriver plockar du bort raden } else if(keycode==13) { så att writeToLayer("layer1",string); hamnar direkt efter string+=String.fromCharCode(keycode);.
Sedan förstår jag inte vad du menar med "ända tills personen skriver något nytt". Om användaren hela tiden skall se vad han knappar, när börjar han skriva något nytt? När skall texten sluta att vara synlig? Har du funderat på vad du egentligen vill skall hända?
sen vill ja lägga medelandet som en php variabel hur åsdakommer jag detta??
PHP är som bekant ett scriptspråk för serverside-scripting. Således kan du inte direkt spara variabler från klienten till servern, utan du får lägga informationen i ett formulär som du postar till servern där PHP-scriptet tar emot formulärsdatat och gör vad du nu vill skall göras.
det är så att det hela ska vara en chat....förlåt om jag var lite otydlig.... jag menar att personen som skriver ska hela tiden se vad han skriver men ingen annan. När han trycker enter så ska alla i chattrummet se det ända tills han trycker eneter igen....
Då förslår jag att du tar en färdigt php-chat och bara modifierar utseendet på den. Det är ju verkligen att gå över ån för att hämta vatten att kladda ihop en variabel med JavaScript stoppa den i ett formulär för att sedan posta när du kan använda formuläret direkt, style'a om det med CSS om du vill få det att se flashigt ut. Då får du med all gui-funktionallitet som ett text-fält skall ha och webbläsar-stödet kommer att bli mycket bättre -- bara fördelar.