Autor Zpráva
DavidPC
Profil
Zdravím dostal jsem domácí úkol z programování mám za úkol ve zdrojovém kodu najít javascriptové funkce a vypsat co dělají bohužel můj mozek tohle naprosto nepobírá a tak na to marně koukám už dost dlouho a do dnešní půlnoci musím úkol odevzdat je mi jasný, že o to asi nikdo nemá moc zájem zde ale jelikož jak se říká ani kuře zadarmo nehrabe tak jsem ochotný za to nabídnout nějakou odměnu kterou si vybere milosrdná duše co mi pomůže... přikládám zdrojový kod... 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>

<head>
<title>Clovece nezlob se</title>

<style type="text/css">
body {
background: #80d5e4;
behavior: url("csshover.htc")
}

input {
text-align: center
}

#ii {
margin-top: 4em
}

#vkostka {
padding: 0 0.4em
}

#plocha {
font-family: "Helvetica", "Verdena", "Arial";
font-size: 20px;
padding: 10px;
margin: 0 auto;
width: 320px;
background: #ccccd5;
border: 2px solid #000000
}

th b {
display: block;
color: #ffffff;
background: #ffffff;
border: 2px solid #404040;
-moz-border-radius: 14px;
cursor: default
}

#plocha td,
#plocha th,
#plocha th b {
width: 24px;
height: 24px
}

.zn1,
.zn2,
.zn3,
.zn4 {
cursor: pointer !important
}

.zn1:hover,
.zn2:hover,
.zn3:hover,
.zn4:hover {
color: #000000;
border-color: #000000
}

.po1 b {
background: #00d500;
color: #00d500
}

.po2 b {
background: #e7e700;
color: #e7e700
}

.po3 b {
background: #60b0f0;
color: #60b0f0
}

.po4 b {
background: #ff8040;
color: #ff8040
}

.zn {}

.zn1,
b.zn1 {
background: #80ff80;
color: #008000;
border-color: #00b000
}

.zn2,
b.zn2 {
background: #ffff80;
color: #808000;
border-color: #b0b000
}

.zn3,
b.zn3 {
background: #80d5ff;
color: #004080;
border-color: #0080b0
}

.zn4,
b.zn4 {
background: #ff9090;
color: #900000;
border-color: #b06060
}
</style>

<script type="text/javascript">
//    Original: FREE 2005 Peter Mlich http://www.volny.cz/peter.mlich/
//    Error: x [Help 4], ja vim, neni to nijak prepychove...

function objGet(x) {
var d = document;
if (typeof x == 'string')
x = d.getElementById ? d.getElementById(x) : d.all ? d.all[x] : d.layers ? d.layers[x] : null;
return x;
}

function obji(x, z) {
objGet(x).innerHTML = z
}

function objv(x, z) {
objGet(x).value = z
}

function objc(x, z) {
objGet(x).className = z
}

function getch(x) {
return objGet(x).checked
}

function getv(x) {
return objGet(x).value
}

var dplocha = new Array(
6, 6, 0, 0, 1, 1, 7, 0, 0, 7, 7,
6, 6, 0, 0, 1, 7, 1, 0, 0, 7, 7,
0, 0, 0, 0, 1, 7, 1, 0, 0, 0, 0,
0, 0, 0, 0, 1, 7, 1, 0, 0, 0, 0,
6, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1,
1, 6, 6, 6, 6, 0, 8, 8, 8, 8, 1,
1, 1, 1, 1, 1, 9, 1, 1, 1, 1, 8,
0, 0, 0, 0, 1, 9, 1, 0, 0, 0, 0,
0, 0, 0, 0, 1, 9, 1, 0, 0, 0, 0,
9, 9, 0, 0, 1, 9, 1, 0, 0, 8, 8,
9, 9, 0, 0, 9, 1, 1, 0, 0, 8, 8);
var iplocha = new Array(0, 11, 11);
var eplocha = new Array(
45, 46, 0, 0, 9, 10, 11, 0, 0, 55, 56,
47, 48, 0, 0, 8, 51, 12, 0, 0, 57, 58,
0, 0, 0, 0, 7, 52, 13, 0, 0, 0, 0,
0, 0, 0, 0, 6, 53, 14, 0, 0, 0, 0,
1, 2, 3, 4, 5, 54, 15, 16, 17, 18, 19,
40, 41, 42, 43, 44, 0, 64, 63, 62, 61, 20,
39, 38, 37, 36, 35, 74, 25, 24, 23, 22, 21,
0, 0, 0, 0, 34, 73, 26, 0, 0, 0, 0,
0, 0, 0, 0, 33, 72, 27, 0, 0, 0, 0,
75, 76, 0, 0, 32, 71, 28, 0, 0, 65, 66,
77, 78, 0, 0, 31, 30, 29, 0, 0, 67, 68);
var polehry = new Array(80)
var zn = new Array(" ", "O", "1", "2", "3", "4", "o", "o", "o", "o")
var pl = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
var pl1 = new Array(0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3)
var hracu = 0
var hraje = 0
var hod = 0
var ksok = false

function mrizka(cislo) {
var w, x, y, e, z, a, b, c, xm, ym, i, j, k;
e = cislo * 3;
w = iplocha[e]
xm = iplocha[e + 1]
ym = iplocha[e + 2]
var tt = '<table cellpadding="0" cellspacing="1">\n';
for (y = 0; y < ym; y++) {
tt += '<tr>\n';
for (x = 0; x < xm; x++) {
a = y * xm + x
z = dplocha[w + a];
i = eplocha[w + a];
j = (z > 0) ? ' onclick="hraj(' + i + ')"' : '';
k = (z > 5) ? ' class="po' + (z - 5) + '"' : ''
if (z > 0) tt += '<th' + j + k + '><b id="p' + i + '">' + zn[z] + '<\/b><\/th>\n'
else tt += '<td><\/td>'
}
tt += '<\/tr>\n';
}
tt += '<\/table>';
obji('plocha', tt);
}

function resetpole() {
var i;
for (i = 0; i < 80; i++) polehry[i] = 99;
mrizka(0);
for (i = 0; i < 16; i++) pl[i] = 0
}

function ksc(z) {
objc("vkostka", "zn" + z)
}

function ksv(z) {
objv("vkostka", z)
}

function ksx() {
obji("kostkax", (pl1[4 + hraje] - 1) + "x")
}

function kostka2() {
var a, b;
b = 4 + hraje;
a = pl1[b];
a--;
pl1[b] = a;
ksx();
if (a < 1) kostka1()
}

function kostka1() {
var a = hraje;
pl1[4 + a] = pl1[8 + a];
a++;
if (a >= hracu) a = 0;
ksc(pl1[a]);
ksx();
ksok = false;
hraje = a
}

function kostka() {
if (!ksok) {
if (hod != 0) kostka2();
var a, b, i, j, k;
b = 0;
for (i = 0; i < 8; i++) {
k = Math.floor(Math.random() * 9) + 1;
for (j = 0; j < k; j++) a = Math.floor(Math.random() * 6) + 1;
b += a;
if (a != 6) i = 8
};
if (b > 49) b = 0;
hod = b;
if (b > 6) b = ">" + b + "<";
ksv(b)
}
}

function smazznacku(x) {
obji("p" + x, zn[1]);
objc("p" + x, "");
polehry[x] = 99
}

function pisznacku(x, z1, z2) {
obji("p" + x, zn[(z1 + 1)]);
objc("p" + x, "zn" + z1);
polehry[x] = z2 + 1
}

function hraj(ktere) {
var a, b, c, d, e, f, g, h, i, k;
var t = u = false
k = ktere
b = polehry[k] - 1;
d = b & 0xFC;
e = (d >> 2)
c = pl[b] + hod
if ((e + 1) == pl1[hraje]) {
//posun
if ((k < 44) || ((k > 50) && (k < 54)) || ((k > 60) && (k < 64)) || ((k > 70) && (k < 74))) {
a = k + hod
if ((b >= 0) && (c < 45)) {
a = (a > 40) ? a - 40 : a;
if (c > 40) a = e * 10 + c;
h = polehry[a] - 1;
f = h & 0xFC
if (f != d) {
hod = 0;
ksv(hod);
t = u = true
}
}
}
//nasazeni
else {
if (hod > 6) {
a = e * 10 + 1;
h = polehry[a] - 1;
f = h & 0xFC;
if (f != d) {
hod -= 6;
ksv(hod);
t = true;
c = 1;
pl1[8 + hraje] = 1
}
}
}
}
if (t) {
// vyhozeni
if (h != 98) {
smazznacku(a);
f = (f >> 2);
for (i = 0; i < 4; i++) {
g = f * 10 + 45 + i;
if (polehry[g] == 99) {
pisznacku(g, f + 1, h);
pl[h] = 0;
i = 9
}
}
}
smazznacku(k);
pisznacku(a, e + 1, b);
pl[b] = c;
ksok = true
i = e * 4;
if ((pl[i] + pl[i + 1] + pl[i + 2] + pl[i + 3]) == 170) {
i = e + 1;
alert("Vyhral hrac " + i + " " + getv("jmhrac" + i) + " !!!");
ksok = false
}
}
if (u) kostka1()
}

function ppstart() {
var i, j, a, b;
resetpole();
for (i = 0; i < 4; i++) {
pl1[i] = 0
}
for (i = 4; i < 12; i++) {
pl1[i] = 3
}
i = 0
if (getch("vhrac1")) {
pl1[i] = 1;
i++
}
if (getch("vhrac2")) {
pl1[i] = 2;
i++
}
if (getch("vhrac3")) {
pl1[i] = 3;
i++
}
if (getch("vhrac4")) {
pl1[i] = 4;
i++
}
hraje = 0;
hracu = i;
j = 0;
if (i > 1) {
hod = 1;
ksv(0);
ksc(pl1[0]);
pl1[4] = 4;
ksok = false;
for (i = 0; i < 16; i++) {
a = pl1[j] - 1;
b = (i & 3);
if (a >= 0) pisznacku((45 + 10 * a + b), a + 1, a * 4 + b);
if (b == 3) j++
}
}
}

function init() {
ppstart()
}
</script>
</head>



<body onload="init()">

<center>

<form name="f" action="#">
<table>
<tr>
<th>
<h2>Clovece, nezlob se!</h2>
<div id="plocha"></div>
</th>
<th valign="top" width="100">
<p id="ii">
Kostka<br />
<i id="kostkax">3x</i>
<input type="button" value="0" onclick="kostka()" class="zn1" id="vkostka" />
</p>

<p> <input type="checkbox" id="vhrac1" /><input type="text" value="Peta" size="7" id="jmhrac1" class="zn1" />
<br /> <input type="checkbox" id="vhrac2" /><input type="text" value="Terezka" size="7" id="jmhrac2" class="zn2" />
<br /> <input type="checkbox" id="vhrac3" /><input type="text" value="nevim" size="7" id="jmhrac3" class="zn3" />
<br /> <input type="checkbox" id="vhrac4" /><input type="text" value="nevim" size="7" id="jmhrac4" class="zn4" />
<br /></p>

<p><input type="button" value="Start" onclick="ppstart()" /></p>

<p><input type="button" value="Help" id="napov" onclick="
var tt='';
tt+='Člověče, nezlob se'
tt+='\nPravidla:'
tt+='\n1. Hra pro 2-4 hracu'
tt+='\n2. Kostka>5 = nasazeni figurky + tah / tah'
tt+='\n3. Posun na pole s figurkou: moji = nelze, cizi = vyhozena'
tt+='\n4. Pokud lze posunout, musi se posunout'
tt+='\n5. Hra konci, pokud ma jeden z hracu vsechny figurky v domecku v rade'
tt+='\nOvladani: mouse'
tt+='\nNazvy: Los Raus Hier! , (Man, not to be angry!)'
tt+='\nPozn.: Ve Firefox a Mozille jsou policka kulata, pro Explorer by se museli pouzit obrazky'
alert(tt)" /></p>

</th>
</tr>
</table>
</form>

</center>

<p><sub>Test: Firefox 1.07, Explorer 6.0, Opera 8.0</sub></p>

<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-8453291-23']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
</script>
<!-- (C)2000-2014 Gemius SA - gemiusAudience / mujweb.cz / Homepage -->
<script type="text/javascript">
<!--//--><![CDATA[//><!--
var pp_gemius_identifier = 'bP2a.0eEYzyqaXf3ZoFWPqQ_Ld8uuKccPaMvkuUkgcr.t7';
// lines below shouldn't be edited
function gemius_pending(i) {
window[i] = window[i] || function() {
var x = window[i + '_pdata'] = window[i + '_pdata'] || [];
x[x.length] = arguments;
};
};
gemius_pending('gemius_hit');
gemius_pending('gemius_event');
gemius_pending('pp_gemius_hit');
gemius_pending('pp_gemius_event');
(function(d, t) {
try {
var gt = d.createElement(t),
s = d.getElementsByTagName(t)[0],
l = 'http' + ((location.protocol == 'https:') ? 's' : '');
gt.setAttribute('async', 'async');
gt.setAttribute('defer', 'defer');
gt.src = l + '://spir.hit.gemius.pl/xgemius.js';
s.parentNode.insertBefore(gt, s);
} catch (e) {}
})(document, 'script');
//--><!]]>
</script>
</body>

</html>
Lukyn2006
Profil
Javascript je všechno co začíná: <script type="text/javascript"> + text mezi tím a nakonec </script>

Už to sice nestihneš do plnoci ale snad ti to pomůže při srpnovém reparátu. Za 5000,-Kč ti ty skripty vypíšu konkrétně i s tím co dělají.
Bubák
Profil
Já tam vidím (mimo jiné) šmírovací funkci spir.hit.gemius.pl/xgemius.js, ale jak má student poznat, o co jde, to nevím.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: