Avaleht
uus teema   vasta Tarkvara »  WWW »  Ekraani-laius javascriptist PHP-sse märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
Ritso
HV vaatleja

liitunud: 29.11.2004




sõnum 29.08.2011 23:38:14 Ekraani-laius javascriptist PHP-sse vasta tsitaadiga

Tere!

Olukord:

Oleks vaja kuvada veebilehel ühe wordpressi pluginaga(Cross Slide Cross Fade) taustapilti sama laialt kui kasutaja ekraan.

PHP-ga kuidagi kasutaja ekraani laiust kätte ei saa, aga javascripti või jQueryga saab. Näiteks nii.

Aga ma ei oska jQuery muutujat ületuua PHP-sse.

Googledasin küll, aga seal oli ainult selline variant, mis muutis headerit ja siis headerist võttis PHP-sse. Aga see keeras süsteemi sassi ja ei lasnud enam sellelt headerilt ära minna.

Kas keegi oskab aidata?

_________________
Veebi-, trüki- ja logodisain.

http://ritso.planet.ee
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 30.08.2011 00:29:55 vasta tsitaadiga

Kui sa kasutad juba JS laiuse - kõrguse võtmiseks, pole eriti mõttekas ju uuesti lehte sisse lugeda ja need laiused kõrgused php abil html - css sisse kirjutada. JS on täiesti võimeline css reaalajas muutma ja lihtsalt lased sellel töö ära teha. JQ s kasutad näiteks css funktsiooni
JS andmed php sse oleks kõige lihtsam viis panna nad kuhugi hidden väljale ja post abil saata, või kirjutad JS abil get muutujasse andmed.
<?php
if(!isset($_GET['la'])){
echo'
<script>
function wSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == "number" ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in "standards compliant mode"
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }

return "?la="+myWidth+"&ko="+myHeight;
}

window.location.href=wSize();
</script>';
}else{
$laius=$_GET['la'];
$korgus=$_GET['ko'];
}
echo $laius.'<br>'.$korgus;

?>

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Ritso
HV vaatleja

liitunud: 29.11.2004




sõnum 30.08.2011 08:14:03 vasta tsitaadiga

Aitüma!

Põhimõtteliselt see täitsa töötab, lihtsalt küsin veel üle:

Kas kuidagi nii pole võimalik, et see info headerisse ei jookseks. Headeri all pean silmas seda aadressi riba. Millele antud juhul lisatakse:

?la=1280&ko=685

_________________
Veebi-, trüki- ja logodisain.

http://ritso.planet.ee
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
limp
HV Guru
limp

liitunud: 11.08.2003




sõnum 30.08.2011 08:22:58 vasta tsitaadiga

session?
_________________
Ärgake lapsed, maailm on hädaohus

Windows keskkond on nagu li*s - kõik teda ke*ivad aga keegi teda ei armasta!
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 52
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 30.08.2011 12:41:41 vasta tsitaadiga

Aga miks sa ei kasutanud JS suuruse muutmist? Enamasti nii tehaksegi, see läbi php on ju porno, laed lehte kaks korda. See oli näiteks, kuidas andmeid üle kanda, kuid hetke olukorras oleks sootuks mõistlikum kasutada JS, kuna ega ekraani mõõdud ju nii laialt ei erine, et peaks tausta GD töötlema, piisab ka IMG tagi mõõtmete muutmisest.


<html>

<head>

<style>
#taust{display:none;}
</style>
<script>
function wSize() {
var taust=document.getElementById('taust');
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == "number" ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in "standards compliant mode"
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }

taust.style.width=myWidth+"px";
taust.style.height=myHeight+"px";
taust.style.display="block";
}
window.onload=function(){
wSize();

}
</script>
</head>
<body>
<div style="position:absolute;left:0px;top:0px;"><img src="http://3.bp.blogspot.com/_DFc6dQ7_atk/S8LS3z4X45I/AAAAAAAAKog/JFTvEC5Zo7w/s320/lill.gif" id="taust"/></div>
Tere minu kodukas


</body>
</html>

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  WWW »  Ekraani-laius javascriptist PHP-sse
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.