You are not logged in.

  • Login

1

Saturday, July 12th 2008, 10:03pm

Rechnen mit Javascript

Hallöchen!

Ich möchte

3+4 in JavaSrict rechnen so das mir 7 ausgegeben wird ich aber im Befehl irgendwie 3+4 stehen hab.

Wie geht das? Kann mir jemand helfen?

2

Saturday, July 12th 2008, 10:29pm

hi auch ;)

öhm, wo ist das Problem?

document.write(3+4);

3

Sunday, July 13th 2008, 10:21am

hmmm, dazu noch eine kleine Albernheit am Sonntag morgen gefällig?

... schon damit der Thread nicht zu kurz wird,
verbinden wir doch mal das "Javascript-Rechnen" mit dem "Javascript 1mal1"

Quelltext kopieren, als html abspeichern, angucken ...
und sich zu weiteren eigenen Schandtaten inspiriert fühlen. ;)

(ja, ich hab manchmal solche Anfälle...)

HTML Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>1mal1</title>
<style type='text/css'>
h1{
	margin: 1.5em;
	text-align: center;
}
table{
	border-collapse: collapse;
	margin-left: auto;
	margin-right: auto;
	width: 50%;
	border: 3px double gray;
}
td{
	padding: 10px;
	text-align: center;
}
.h_mark{
	background: #fea;
}
.v_mark{
	background: #bef;
}
.z_mark{
	background: #bbdeaa;
}
div{
	text-align: center;
}
</style>
<script type='text/javascript'>
var tds=document.getElementsByTagName('td');
 
if (navigator.appName.indexOf("Explorer") != -1){
	var c='className';
}else{
	var c='class';
}
 
function mark(i,j){
	document.getElementById('rechne').innerHTML=i+'*'+j+'='+i*j;
	for(x=0;x<10;x++){
		tds[j-1+x*10].setAttribute(c,'v_mark');
		tds[(i-1)*10+x].setAttribute(c,'h_mark');
	}
	tds[j-1+10*(i-1)].setAttribute(c,'z_mark');
}
function unmark(){
	for(x=0;x<100;x++){
		tds[x].removeAttribute(c);
	}
}
</script>
</head>
<body>
<h1>Das kleine EinMalEins</h1>
<div id='rechne'>Die Maus bitte &uuml;ber die Zahlen bewegen...</div>
<script type='text/javascript'>
document.write("<table>");
for(i = 1; i <= 10; i++) {
	document.write ("<tr>");
	for(j = 1; j <= 10; j++) {
		document.write('<td onmouseover="mark('+i+','+j+')" '+
					'onmouseout="unmark()">'+i*j+'</td>');
	}
	document.write("</tr>");
}
document.write("</table>");
</script>
</body>
</html>

...und so sieht's aus:
(bewegliches "Fadenkreuz" + jeweils aktuelle Berechnung nochmals oberhalb)
McSush has attached the following image:
  • 1mal1.jpg

4

Sunday, July 13th 2008, 12:29pm

hm....ja vielen Dank für's Antworten! Das mit dem 1x1 verbinden ist mir schon zu hoch....

This post has been edited 1 times, last edit by "Anne" (Jul 13th 2008, 10:21pm)


5

Sunday, July 13th 2008, 12:42pm

aso, ja, du mußt zwischen den Datentypen unterscheiden.
"4" ist nicht das Gleiche, wie 4
wenn Du 4+4 ausgeben läßt, erhältst Du 8
aber wenn Du "4"+"4" eintippst, erhältst Du 44
und wenn Du "4+4" angibst, erhältst Du 4+4

Probier mal: document.write("3+4="+(3+4));

[EDIT]
und es lief >garnicht<, weil Du nen Zeilenumbruch in die Ausgabe reingehauen hast.
Das macht javascript nicht an jeder Stelle mit.

This post has been edited 2 times, last edit by "McSush" (Jul 13th 2008, 12:48pm)


6

Sunday, July 13th 2008, 1:03pm

Nein das geht nicht er shreibt mir alles aufs Blatt genau so wie es da steht.

7

Sunday, July 13th 2008, 1:39pm

Vergleich mal:
Falsch:
document.write("<b>Die Summe von 3 und 4 ist gleich;</b>34<br><i>Es geht auch so</i> 3+4= (3+4)");
Richtig:
document.write("<b>Die Summe von 3 und 4 ist gleich;</b>"+(3+4)+"<br><i>Es geht auch so</i> 3+4= "+(3+4));

8

Sunday, July 13th 2008, 4:04pm

Hallöchen!

Ich hab's jetzt. Sag lieber nicht, was ich falsch gemacht hab, das ist mir zu peinlich auch für eine Anfängerin.

Social bookmarks