Domanda
Sto dando una pugnalata alle dichiarazioni if ??else, non sono sicuro di scriverlo correttamente & # 8230; Cercare di ottenerlo in modo che se la dimensione popupHeight è più grande della dimensione WindowHeight, la posizionerebbe nella parte superiore della finestra + 10px & # 8230;
$("#data").load("/content/" + htmlName + ".html", null, function(){
//Set Variables
var container = $(".container");
var project = $(".project");
var popupWidth = container.find(".project img:first").width();
var popupHeight = container.find(".project img:first").height()+35;
var windowWidth = document.documentElement.clientWidth;
var windowHeight = document.documentElement.clientHeight;
var x = ($(window).width() / 2 - popupWidth / 2) + $(window).scrollLeft();
var y = ($(window).height() / 2 - popupHeight / 2) + $(window).scrollTop();
//Set popup dimensions
container.css("width" , popupWidth);
container.css("height" , popupHeight);
//Set popup CSS
container.css({"position": "absolute", "left": x + "px", "z-index": "2" });
project.css({"width": (popupWidth), "height": (popupHeight) });
//Determine Position
if(popupHeight>windowHeight) {
container.css{("top": $(window).scrollTop(); + 10 + "px")
}else{
container.css({"top": y + "px"});
return;
}
});
Soluzione
Sbarazzati del punto e virgola dopo scrollTop () e mettilo alla fine della riga-
container.css{("top": $(window).scrollTop(); + 10 + "px")
Dovrebbe apparire-
container.css({"top": $(window).scrollTop() + 10 + "px"});
Anche la tua funzione CSS deve essere riformattata, dovrebbe piacere quanto sopra.
Altri suggerimenti
Non ho mai usato jQuery prima, quindi potrei sbagliarmi, ma i punti e virgola in questa riga non sono nel posto sbagliato?
container.css{("top": $(window).scrollTop(); + 10 + "px")
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow