Beiträge von cottton
-
-
jetz raff ichs.
da gibts nen Trick: http://css3.bradshawenterprises.com/animating_height/
Stichwörter; transition , max-heighterneut geändert:
class section.main article:
max-height: 52px;
und class .art auf max-height gesetzt
und toggle function auf artikel.style.maxHeightgeht aber irgendwie nur beim Zuklappen. Bekomms auch grad nicht hin.
http://jsfiddle.net/Qz76h/4/ -
so jetz hab ich mal rin geguckt:
neu:
class .art{}
geändert:
nur die toggle func
und in class section.main article
/*transition: height 5s;*/ auskommentiertachja, und die links zu den boxen, da nicht ladbar =)
>>> http://jsfiddle.net/Qz76h/3/
Das war das, was ich meinte:
Du gibst dem Wrap die "Aufgabe" alles was mit height zu tun hat zu animieren.
Also wird, sobald Du per JS die height änderst, die Änderung animiert =) -
innerHTML =)
innerHtml geht net :pHTML
Alles anzeigen<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf8" /> <title></title> <style type="text/css"> </style> <script type="text/javascript"> window.onload = function() { var slider = document.getElementById('viewsize'); var zeige = document.getElementById('currentValue'); if(window.addEventListener){ slider.addEventListener('change', function () { zeige.innerHTML = slider.value; window.resizeTo( parseInt(slider.value), 400 ); // evtl parseInt? dunno }); }else if(window.attachEvent){ slider.attachEvent('onchange', function () { zeige.innerHTML = slider.value; window.resizeTo( parseInt(slider.value), 400 ); }); } } </script> </head> <body> <form> Breite: 350 <input id="viewsize" type="range" min="350" max="1300" value="400" step="25">1300. </form> <div id="currentValue"></div> </body> </html>liegt an
addEventListener -- will "change"
aber
attachEvent -- will "onchange".ist mit den meisten (wenn nicht alle) Befehlen bei den beiden (click, onclick ect)
-
Danke, hatte garnich daran gedacht: wenn temp pw zu alt ist. (@ link http://www.martinstoeckli.ch/php/php_de.html#passwordreset)
Hab ich gerade bei mir eingebaut, dass das temp pw bei "passwort vergessen"-function nur x tage gültig ist.
Das mit dem Fisch in der Suppe muss ich mir noch ansehen
-
Bin nicht zu hause also kanns nicht testen,
Aber es sollte gehen;
.wrap
Transition ...
.heightx
Height;...px
.heighty
Hdight;...pxDurch den wrapper wir ja dann festglegt, dass bei hoehenaenderung animiert wirt.
Un per heightx und heighty class aendert sich die hoehe -
article.styletransition
Muss doch
article.style.transition
Heissen,oder?Edit,
Du kommsr evtl besser, wenn du via css klassen defiinierst un per js da.n die class setzt -
stimmt, wir hatten das thema komlett auseinanfer genommen.
such mal im forum nach password_hash, sysop
das salt spielt spielt dabei eine ziehmlich grosse rolle. -
-
japp, zB eine getUserIp() function.
nicht genug um eine Klasse zu schreiben, also als normalo function genutzt.Btw: WENN Du functions in functions (oder methoden) definierst, dann setze ein if(function_exists()) davor.
Sonst schmeißt es Dir nen Fehler bei erneuten aufrufen.
EDIT:had grad mal was wissen wollen, zwecks private und public und dabei festgestellt:
nennt man eine Methode test(), dann wird die beim erzeugen eines objects ausgeführt oO? wtf!hier der test;
PHP
Alles anzeigenclass Test { public function test() { /*DEBUG*/ test($this,'1. in methode test()'); /*DEBUG*/ test($this->privateMeth(),'1. call private methode'); if(!function_exists('callme')){ function callme($obj){ /*DEBUG*/ test($obj,'2. in function callme()'); /*DEBUG*/ test($obj->privateMeth(),'2. call private methode'); // Fatal error: Call to private method Test::privateMeth() from context '' in C:\xampp\htdocs\test.php on line 13 return; } } callme($this);$this->privateMeth(); return; } private function privateMeth() { return; } } $a = new Test(); function test($val,$title=''){ $br = '<br />'; echo '<pre># <b>DEBUG</b>: <u>'.$title.'</u>'.$br; echo '<i>type:</i> '.gettype($val).$br.'<i>val:</i> '; if(is_bool($val)){ echo ($val === true)?'true':'false'; }elseif(is_null($val)){ echo 'NULL'; }elseif(!is_numeric($val)and empty($val)){ echo 'empty'; }elseif(is_resource($val)){ echo get_resource_type($val); }else{ print_r($val); } echo $br.'#/DEBUG</pre>'; }
innerhalb der (normalo) function gehen die Rechte flöten.
Bin grad ziemlich müde, aber ich denke das liegt daran, dann (bildlich gesehen) das object in der normalo function als "draußen" gesehen wird. Also nicht mehr in der Klasse genutzt wird.Aber noch mal zu methode test: jemand mal was darüber gelesen?
-
ich bekomm nur: Uncaught TypeError: Cannot read property 'style' of undefined
prüf mal mit, ob style.height auch gesetzt ist
JavaScript
Alles anzeigenfor (var i = 0; i < butn.length; i++){ butn[i].onclick=function(){ if (article[i].style.height != "undefined" <<<<<<<<<<<<<< && article[i].style.height != "auto" ) { article[i].style.height = "auto"; } else{ article[i].style.height = "52px"; } }; };
EDIT:
achso: na Du hast 2 verschiedene codes hier
einen im jsfiddle, und einen anderen hier 
Du hast vergessen article und butn mit in die function zu geben.
function toggleArt(i,article,butn)oder Du holst Dir die elemente erst IN der function, damit Du sie nicht mit rein geben musst- geht net.EDIT2:
JavaScript
Alles anzeigenwindow.onload=function(){ function toggleArt(article,butn){ if (article.style.height != "auto") { article.style.height = "auto"; butn.style.transform = "rotate(-90deg)"; } else{ article.style.height = "52px"; butn.style.transform = "rotate(0deg)"; } }; var article = document.getElementsByClassName("art"); var butn = document.getElementsByClassName("ddbtn"); for (var i = 0; i < butn.length; i++){ butn[i].onclick = function(){toggleArt(article[i],butn[i]);} }; }; -
-
Lässt sich gut merken: getElementsByClassName
im Gegensatz zu zB getElementByIdbei "getElements" bekommst du also mehrere =)
-
Kommt drauf an, wie - also in welcher Art - es versteckt sein soll.
mann könnte (unsichtbar): opacity:0; setzen
oder das element per position:absolute;;left:-99999; setzen.oletzeres mag ich aber überhaupt nich.
-
Wenn du lust hast kannst du ja z.B. ein Tutorial Teil-2 Responsive Webdesign (Tabellen) schreiben
Hamma doch: Responsive Webdesign
( http://vertex.selfhost.bz/index.php?action=resptbl )
wenn auch immernoch nicht perfekt :p -
Mach mal lieber kein eval.
eval is evil =)Du holst Dir von der public page Daten und schickst sie durch eval.
Heißt:
wenn in der tag.value das hier zB drin steht:Zitat
1"; rufMeineFunctionAuf(); //
dann erzeugt:Zitateval("var c"+tag+"="+tag.value);
das hier:Zitatvar csID=11"; rufMeineFunctionAuf(); //
Wie die value dort hin kommen könnte (XSS) ist erstmal Latte.
Außerdem: die vars sind ja in der function "gefangen". Die sind also nicht global. Aber global hin oder her - nimm arrays für dynamische Schlüssel:
-
Kommt frauf an was du machen willst.
Aber eigtl Wurst.
Du musst auch nicht die function callback() nutzen. Ist halt einfacher, find ich.
Du könntest auch (wie in Deinem ersten Post):
JavaScriptfunction machEinStandart(var1, truef, failf){ var1 = DoSomethingWhitMe; if (var1 == true){ truef(); } else{ failf(); } }JavaScript
Alles anzeigenfunction hatGeklappt(){/* Code */} function leiderNicht(){/* Code */} // entweder das hier: machEinStandart(this, hatGeklappt(), leiderNicht()); // oder das: machEinStandart(this, hatGeklappt, leiderNicht); // oder das: machEinStandart(this, function(){hatGeklappt()}, function(){leiderNicht()}); // ... bin mir da grad nicht sicher, aber ich glaub das letztere // ... oder das: hatGeklappt = function(){/* Code */} leiderNicht = function(){/* Code */} machEinStandart(this, hatGeklappt, leiderNicht); -
denk schon:
PHP
Alles anzeigen$teststring = "name' or `rank` = 'adm'; -- injection "; $sKey = 'key'; $_GET[$sKey] = $teststring; $verbindung = new mysqli("localhost", "*", "*"); $var = mysqli_real_escape_string($verbindung, strip_tags(htmlentities(trim($_GET[$sKey])))); # == name\' or `rank` = \'adm\'; -- injection $teststring = 'name" or `rank` = "adm"; -- injection '; $sKey = 'key'; $_GET[$sKey] = $teststring; $verbindung = new mysqli("localhost", "*", "*"); $var = mysqli_real_escape_string($verbindung, strip_tags(htmlentities(trim($_GET[$sKey])))); # == or `rank` = "adm"; -- injectionAber wieso nicht einfach prepared statements?
EDIT:
Stop!
du brauchst doch vor der escape function nicht nochmal escapen
-
das geht. das geht mit functions, mit klassen methoden und sogar mit parametern.call_user_func() http://us2.php.net/manual/de/function.call-user-func.php
call_user_func_array http://us2.php.net/manual/de/func…-func-array.php()
wieso antworte ich auf JS mit PHP?
das hier geht:
JavaScript
Alles anzeigenfunction callback(cl,meth,para){ // description: http://www.html-seminar.de/html-css-php-forum/board40-themenbereiche/board5-javascript/4223-js-klasse-verliert-werte/#post29535 return (meth)?meth.apply((cl)?cl:null,(para)?[para]:null):false; // example: // var x = callback(myClassRef,meineFuncRef,myPara); // or // var x = callback(false,meineFuncRef,myPara); // or // var x = callback(false,meineFuncRef); } function machEinStandart(var1, truef, failf){ var1 = 1; var para = [var1,2,'string']; /* parameter is array*/ if (var1 == true){ callback(false,truef,para); } else{ callback(false,failf,para); } } function hatGeklappt(array){/* Code */ alert('hatGeklappt() array: '+array[0]+', '+array[1]+', '+array[2]); } function leiderNicht(array){/* Code */ alert('leiderNicht() array: '+array[0]+', '+array[1]+', '+array[2]); } //functions nicht als string, sondern als referenz mitgegeben machEinStandart(this, hatGeklappt, leiderNicht);
dabei fällt mir auf, dass man die cl in der function callback auch als parameter 2 setzen könnte.
macht es einfacher, wenn jemand oft nur functions nutzen möchte.EDIT:
! bedenke, dass du nach dem callback wieder am ausgangspunkt landest.also:
callback(...,...);
// hier gehts aber nach callback weiter
...
... -
Das mMn ändert alles. Man könnte ja schon von Diebstahl reden.
Mal angenommen Du hättest den Link geteilt und jemand käme (wie auch immer) an die Daten. Dann ... naja, rechtskram halt hier einfügen
Ich kenne Dich nicht, kenne auch nicht die Beziehung zw. Dir und dem Kd.
Aber ob man jemanden lange kennt oder gar nicht: Daten kopiert man nur mit Wissen und Einverständnis der Besitzers.
Ob das beim Laptop is, der nicht mehr will, nem USB-Stick, oder ner Homepage.
Auch Ordner einssehen ect. ...Würd ich mir ganz schnell abgewöhnen. Auch wenn Dus gut gemeint hast - wenn der Kd das anders sieht, dann kommt nie wieder ne Nachfrage.