Avatar
John Ronald Reuel Tolkien:25. května 18:37

Zdravím,
chtěl bych se zeptat...
Mám stránku, a v ní mám nahrány dva scripty. Vždycky mi ale funguje pouze ten, který je na nižším řádku. Je to tím, že na stránce by měl být pouze jeden externí skript ? Nebo tím, že mám v kódu něco co brání spuštění druhého skriptu ?
Děkuji za odpovědi.

 
Odpovědět 25. května 18:37
Avatar
Peter Sciranka
Redaktor
Avatar
Odpovídá na John Ronald Reuel Tolkien
Peter Sciranka:25. května 18:47

Ahoj, napíš kód, ale scriptov môžeš mať koľko chceš, aj keď je lepšie keď je ich čo najmenej.

Nahoru Odpovědět 25. května 18:47
Act as if it was Impossible to Fail
Avatar
John Ronald Reuel Tolkien:25. května 18:55

1.skript :

window.onload=function()
 {

function smaz()
{
// proměnné

let ksmazani=[];
let ksmazaniPHP=[];
let pozice = 0;
let element;
$("#knihy td").addClass("table");
$("#knihy").click(function(e)
{
$("#knihy td").addClass("table");
vytvorMenu();

// zdali je okno scrollnuto

 if ($(document.documentElement).scrollTop()<=0)
 {

 element=document.elementFromPoint(e.pageX,e.pageY);
 }
 else
 {
   element=document.elementFromPoint(e.pageX,e.pageY-$(document.documentElement).scrollTop());
 }

// vyber nadrazený element elementu
let rodic= $(element).parent();

if ($(element).hasClass("table"))
{
if (!$(element).hasClass("aktivovano"))
{
$(rodic).contents().css("backgroundColor","blue");
$(element).addClass("aktivovano");
ksmazani.push(rodic);
ksmazaniPHP.push($(rodic).contents()[0].innerHTML);
console.log(ksmazaniPHP);

}
else
{

$(element).removeClass("aktivovano");
$(element).addClass("ne");
$(rodic).contents().css("backgroundColor","rgb(176,64,0)");
pozice=ksmazani.indexOf(element)
pozicePHP=ksmazaniPHP.indexOf($(rodic).contents()[0].innerHTML);
ksmazani.splice(pozice,1);
ksmazaniPHP.splice(pozicePHP,1);

}

}
});
function vytvorMenu()
{
let smazat=document.createElement("button");
smazat.style="width:70px;height:30px;left:55px;position:absolute;z-index:550;top:50%;" ;
smazat.textContent="Smazat";
document.body.appendChild(smazat);
smazat.onclick=function()
{

for (p in ksmazaniPHP)
{
 var xhtml=new XMLHttpRequest();
  xhtml.onreadystatechange=function()
  {
  if (xhtml.readyState == 4 && xhtml.status == 200)
  {
  document.getElementById("knihy").innerHTML=xhtml.responseText;
  }
  }
  xhtml.open("GET","smazani_knihy.php?s=" + ksmazaniPHP[p],true)
  xhtml.send();
  }


}
}
 }
}

2.skript :

window.onload=function()
{

   let sirka_stranky=parseFloat($("body").css("width"));
   let images=document.getElementsByTagName("img");
   let aktivovano=true;

   for (x in images)
 {
 images[x].onclick=function()
 {
  $("html").css("overflow","hidden");
   $("#kryci").css({
   "display":"block",
   "top":(document.documentElement.scrollTop*1.5) + "px"

   });
$("#kryci").animate({
"opacity":"0.9"

},2000);
if (aktivovano)
 {
   aktivovano=false;
$(this).clone().insertAfter($(this)).addClass("klon");
$(".klon").animate({
"width":this.width*4.5 + "px" ,
"height":this.height*4.5 + "px"
},2000);
$(".klon").css({
  "position": "absolute",
    "margin": "auto",
    "left": "0",
    "right":" 0",
    "top": (parseInt($("body").css("height"))/2)-300+(document.documentElement.scrollTop*1.4),
    "bottom": "0"
});
}
$(".klon").click(function(){
$(this).remove();
aktivovano=true;
$("html").css("overflow","visible");
$("#kryci").css({
"opacity":"0",
"display":"none"

});
 });
 }
 }

  }
 
Nahoru Odpovědět 25. května 18:55
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na John Ronald Reuel Tolkien
David Hynek:25. května 19:54

tak onload je fakt jen jednou. udelej si treti funkci, ktera bude jen s tim on load a v ni spust dva ostatni scripty

Nahoru Odpovědět 25. května 19:54
Čím víc vím, tím víc věcí nevím.
Avatar
Odpovídá na David Hynek
John Ronald Reuel Tolkien:25. května 20:03

A to mám udělat tak že ty dva skripty dám každý do jedné funkce a pak je spustit v tom třetím, nebo je přímo nějaká metoda, která umí zavolat jiný skript ? (něco jako require_once v PHP)

 
Nahoru Odpovědět 25. května 20:03
Avatar
John Ronald Reuel Tolkien:26. května 12:37

Nebo spíš, jak mám propojit dva skripty ?

 
Nahoru Odpovědět 26. května 12:37
Avatar
John Ronald Reuel Tolkien:26. května 13:01

Už to mám :D

 
Nahoru Odpovědět 26. května 13:01
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.