mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 12:20 Benutzername: Passwort: Auto-Login

Thema: Javascript Code von vertikal auf horizontal vom 09.07.2011


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Javascript Code von vertikal auf horizontal
Autor Nachricht
custommax
Threadersteller

Dabei seit: 09.07.2011
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 09.07.2011 21:29
Titel

Javascript Code von vertikal auf horizontal

Antworten mit Zitat Zum Seitenanfang

Hallo,
mache momentan eine "Spaßseite" nebenbei, einfach so um mich mal etwas auszutoben. Da das ganze nicht kommerziell ist benutzt ich auch öfter einfach mal scripte aus dem Internet. Nun bin ich auf folgendes ajax script gestoßen, das automatisch Beiträge in meinem Blog nachlädt, sobald man am unteren Ende der Seite angelangt ist. Das Problem ist dass ich nun bei meinem Spaßblog alles horizontal gemacht hab(fragt nich..). Das heist man scrollt horizontal. Das Script löst sich somit schon beim Seitenstart aus. Ist es möglich mit einer Änderung das Script erst am horizontalen rechten ende auszulösen?

Code:

var tumblrAutoPager={url:"http://proto.jp/",ver:"0.1.7",rF:true,gP:{},pp:null,ppId:"",LN:location.hostname,init:function(){if($("autopagerize_icon")||navigator.userAgent.indexOf('iPhone')!=-1)return;var tAP=tumblrAutoPager;var p=1;var lh=location.href;var lhp=lh.lastIndexOf("/page/");var lht=lh.lastIndexOf("/tagged/");if(lhp!=-1){p=parseInt(lh.slice(lhp+6));tAP.LN=lh.slice(7,lhp);}else if(lht!=-1){tAP.LN=lh.slice(7);if(tAP.LN.slice(tAP.LN.length-1)=="/")tAP.LN=tAP.LN.slice(0,tAP.LN.length-1);}else if("http://"+tAP.LN+"/"!=lh){return;};var gPFncs=[];gPFncs[0]=function(aE){var r=[];for(var i=0,l=aE.length;i<l;i++){if(aE[i].className=="autopagerize_page_element"){r=gCE(aE[i]);break;}}
return r;};gPFncs[1]=function(aE){var r=[];for(var i=0,l=aE.length;i<l;i++){var arr=aE[i].className?aE[i].className.split(" "):null;if(arr){for(var j=0;j<arr.length;j++){arr[j]=="post"?r.push(aE[i]):null;}}}
return r;};gPFncs[2]=function(aE){var r=[];var tmpId=tAP.ppId?[tAP.ppId]:["posts","main","container","content","apDiv2","wrapper","projects"];for(var i=0,l=aE.length;i<l;i++){for(var j=0;j<tmpId.length;j++){if(aE[i].id==tmpId[j]){r=gCE(aE[i]);tAP.ppId=aE[i].id;break;}}}
return r;};for(var i=0;i<gPFncs.length;i++){var getElems=gPFncs[i](document.body.getElementsByTagName('*'));if(getElems.length){tAP.gP=gPFncs[i];tAP.pp=getElems[0].parentNode;break;}}
function gCE(pElem){var r=[];for(var i=0,l=pElem.childNodes.length;i<l;i++){r.push(pElem.childNodes.item(i))}
return r;}
if(!tAP.pp){return;}
sendRequest.README={license:'Public Domain',url:'http://jsgt.org/lib/ajax/ref.htm',version:0.516,author:'Toshiro Takahashi'};function chkAjaBrowser(){var A,B=navigator.userAgent;this.bw={safari:((A=B.split('AppleWebKit/')[1])?A.split('(')[0].split('.')[0]:0)>=124,konqueror:((A=B.split('Konqueror/')[1])?A.split(';')[0]:0)>=3.3,mozes:((A=B.split('Gecko/')[1])?A.split(' ')[0]:0)>=20011128,opera:(!!window.opera)&&((typeof XMLHttpRequest)=='function'),msie:(!!window.ActiveXObject)?(!!createHttpRequest()):false};return(this.bw.safari||this.bw.konqueror||this.bw.mozes||this.bw.opera||this.bw.msie)}
function createHttpRequest(){if(window.XMLHttpRequest){return new XMLHttpRequest()}else{if(window.ActiveXObject){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(B){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(A){return null}}}else{return null}}};function sendRequest(E,R,C,D,F,G,S,A){var Q=C.toUpperCase()=='GET',H=createHttpRequest();if(H==null){return null}
if((G)?G:false){D+=((D.indexOf('?')==-1)?'?':'&')+'t='+(new Date()).getTime()}
var P=new chkAjaBrowser(),L=P.bw.opera,I=P.bw.safari,N=P.bw.konqueror,M=P.bw.mozes;if(typeof E=='object'){var J=E.onload;var O=E.onbeforsetheader}else{var J=E;var O=null}
if(L||I||M){H.onload=function(){J(H);H.abort()}}else{H.onreadystatechange=function(){if(H.readyState==4){J(H);H.abort()}}}
R=K(R,D);if(Q){D+=((D.indexOf('?')==-1)?'?':(R=='')?'':'&')+R}
H.open(C,D,F,S,A);if(!!O){O(H)}
B(H);H.send(R);function B(T){if(!L||typeof T.setRequestHeader=='function'){T.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8')}
return T}
function K(X,V){var Z=[];if(typeof X=='object'){for(var W in X){Y(W,X[W])}}else{if(typeof X=='string'){if(X==''){return''}
if(X.charAt(0)=='&'){X=X.substring(1,X.length)}
var T=X.split('&');for(var W=0;W<T.length;W++){var U=T[W].split('=');Y(U[0],U[1])}}}
function Y(b,a){Z.push(encodeURIComponent(b)+'='+encodeURIComponent(a))}
return Z.join('&')}
return H}
function addNextPage(oj){if(oj.status==404){tAP.remainFlg=false;return;}
var d=document.createElement("div");d.innerHTML=oj.responseText;var posts=tAP.gP(d.getElementsByTagName("*"));if(posts.length<2){tAP.rF=false;return;}
d=document.createElement("div");d.className="tumblrAutoPager_page_info";tAP.pp.appendChild(d);for(var i=0;i<posts.length;i++){tAP.pp.appendChild(posts[i]);}
var footer=$("footer");footer?footer.parentNode.appendChild(footer):null;tAP.rF=true;}
watch_scroll();function watch_scroll(){var d=document.compatMode=="BackCompat"?document.body:document.documentElement;var r=d.scrollHeight-d.clientHeight-(d.scrollTop||document.body.scrollTop);if(r<d.clientHeight*2&&tAP.rF){tAP.rF=false;p++;sendRequest(addNextPage,"","GET","http://"+tAP.LN+"/page/"+p,true);}
setTimeout(arguments.callee,200);};function $(id){return document.getElementById(id)};},switchAutoPage:function(){this.rF=!this.rF;var aE=document.getElementsByTagName('*');for(var i=0,l=aE.length;i<l;i++){if(aE[i].className=="tAP_switch"){aE[i].firstChild.nodeValue=this.rF?"AutoPage[OFF]":"AutoPage[ON]";}}}};window.addEventListener?window.addEventListener('load',tumblrAutoPager.init,false):window.attachEvent?window.attachEvent("onload",tumblrAutoPager.init):window.onload=tumblrAutoPager.init;
  View user's profile Private Nachricht senden
pantonine

Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
Verfasst So 10.07.2011 09:30
Titel

Antworten mit Zitat Zum Seitenanfang

Ja. Viel Spaß.
  View user's profile Private Nachricht senden
Anzeige
Anzeige
zweitaccount

Dabei seit: 25.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst So 10.07.2011 20:33
Titel

Antworten mit Zitat Zum Seitenanfang

pantonine hat geschrieben:
Ja. Viel Spaß.

*ha ha* das dachte ich mir auch eben

Hier einmal lesbar - falls jemand den nerv dazu hat - Zeile 221 ist wahrscheinlich interessant *zwinker*.

Code:
var tumblrAutoPager={
    url:"http://proto.jp/",
    ver:"0.1.7",
    rF:true,
    gP:{},
    pp:null,
    ppId:"",
    LN:location.hostname,
    init:function(){
        if($("autopagerize_icon")||navigator.userAgent.indexOf('iPhone')!=-1)return;
        var tAP=tumblrAutoPager;
        var p=1;
        var lh=location.href;
        var lhp=lh.lastIndexOf("/page/");
        var lht=lh.lastIndexOf("/tagged/");
        if(lhp!=-1){
            p=parseInt(lh.slice(lhp+6));
            tAP.LN=lh.slice(7,lhp);
        }else if(lht!=-1){
            tAP.LN=lh.slice(7);
            if(tAP.LN.slice(tAP.LN.length-1)=="/")tAP.LN=tAP.LN.slice(0,tAP.LN.length-1);
        }else if("http://"+tAP.LN+"/"!=lh){
            return;
        };
       
        var gPFncs=[];
        gPFncs[0]=function(aE){
            var r=[];
            for(var i=0,l=aE.length;i<l;i++){
                if(aE[i].className=="autopagerize_page_element"){
                    r=gCE(aE[i]);
                    break;
                }
            }
        return r;
    };
   
    gPFncs[1]=function(aE){
        var r=[];
        for(var i=0,l=aE.length;i<l;i++){
            var arr=aE[i].className?aE[i].className.split(" "):null;
            if(arr){
                for(var j=0;j<arr.length;j++){
                    arr[j]=="post"?r.push(aE[i]):null;
                }
                }
            }
return r;
};

gPFncs[2]=function(aE){
    var r=[];
    var tmpId=tAP.ppId?[tAP.ppId]:["posts","main","container","content","apDiv2","wrapper","projects"];
    for(var i=0,l=aE.length;i<l;i++){
        for(var j=0;j<tmpId.length;j++){
            if(aE[i].id==tmpId[j]){
                r=gCE(aE[i]);
                tAP.ppId=aE[i].id;
                break;
            }
        }
        }
return r;
};

for(var i=0;i<gPFncs.length;i++){
    var getElems=gPFncs[i](document.body.getElementsByTagName('*'));
    if(getElems.length){
        tAP.gP=gPFncs[i];
        tAP.pp=getElems[0].parentNode;
        break;
    }
}
function gCE(pElem){
    var r=[];
    for(var i=0,l=pElem.childNodes.length;i<l;i++){
        r.push(pElem.childNodes.item(i))
        }
    return r;
}
if(!tAP.pp){
    return;
}
sendRequest.README={
    license:'Public Domain',
    url:'http://jsgt.org/lib/ajax/ref.htm',
    version:0.516,
    author:'Toshiro Takahashi'
};

function chkAjaBrowser(){
    var A,B=navigator.userAgent;
    this.bw={
        safari:((A=B.split('AppleWebKit/')[1])?A.split('(')[0].split('.')[0]:0)>=124,
        konqueror:((A=B.split('Konqueror/')[1])?A.split(';')[0]:0)>=3.3,
        mozes:((A=B.split('Gecko/')[1])?A.split(' ')[0]:0)>=20011128,
        opera:(!!window.opera)&&((typeof XMLHttpRequest)=='function'),
        msie:(!!window.ActiveXObject)?(!!createHttpRequest()):false
        };
       
    return(this.bw.safari||this.bw.konqueror||this.bw.mozes||this.bw.opera||this.bw.msie)
    }
function createHttpRequest(){
    if(window.XMLHttpRequest){
        return new XMLHttpRequest()
        }else{
        if(window.ActiveXObject){
            try{
                return new ActiveXObject('Msxml2.XMLHTTP')
                }catch(B){
                try{
                    return new ActiveXObject('Microsoft.XMLHTTP')
                    }catch(A){
                    return null
                    }
                }
        }else{
    return null
    }
}
};

function sendRequest(E,R,C,D,F,G,S,A){
    var Q=C.toUpperCase()=='GET',H=createHttpRequest();
    if(H==null){
        return null
        }
    if((G)?G:false){
        D+=((D.indexOf('?')==-1)?'?':'&')+'t='+(new Date()).getTime()
        }
    var P=new chkAjaBrowser(),L=P.bw.opera,I=P.bw.safari,N=P.bw.konqueror,M=P.bw.mozes;
    if(typeof E=='object'){
        var J=E.onload;
        var O=E.onbeforsetheader
        }else{
        var J=E;
        var O=null
        }
    if(L||I||M){
        H.onload=function(){
            J(H);
            H.abort()
            }
        }else{
    H.onreadystatechange=function(){
        if(H.readyState==4){
            J(H);
            H.abort()
            }
        }
}
R=K(R,D);
if(Q){
    D+=((D.indexOf('?')==-1)?'?':(R=='')?'':'&')+R
    }
H.open(C,D,F,S,A);
if(!!O){
    O(H)
    }
B(H);
H.send(R);
function B(T){
    if(!L||typeof T.setRequestHeader=='function'){
        T.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8')
        }
    return T
    }
function K(X,V){
    var Z=[];
    if(typeof X=='object'){
        for(var W in X){
            Y(W,X[W])
            }
        }else{
    if(typeof X=='string'){
        if(X==''){
            return''
            }
        if(X.charAt(0)=='&'){
            X=X.substring(1,X.length)
            }
        var T=X.split('&');
        for(var W=0;W<T.length;W++){
            var U=T[W].split('=');
            Y(U[0],U[1])
            }
        }
    }
function Y(b,a){
    Z.push(encodeURIComponent(b)+'='+encodeURIComponent(a))
    }
return Z.join('&')
}
return H
}
function addNextPage(oj){
    if(oj.status==404){
        tAP.remainFlg=false;
        return;
    }
    var d=document.createElement("div");
    d.innerHTML=oj.responseText;
    var posts=tAP.gP(d.getElementsByTagName("*"));
    if(posts.length<2){
        tAP.rF=false;
        return;
    }
    d=document.createElement("div");
    d.className="tumblrAutoPager_page_info";
    tAP.pp.appendChild(d);
    for(var i=0;i<posts.length;i++){
        tAP.pp.appendChild(posts[i]);
    }
    var footer=$("footer");
    footer?footer.parentNode.appendChild(footer):null;
    tAP.rF=true;
}
watch_scroll();
function watch_scroll(){
    var d=document.compatMode=="BackCompat"?document.body:document.documentElement;
    var r=d.scrollHeight-d.clientHeight-(d.scrollTop||document.body.scrollTop); // HIER
    if(r<d.clientHeight*2&&tAP.rF){
        tAP.rF=false;
        p++;
        sendRequest(addNextPage,"","GET","http://"+tAP.LN+"/page/"+p,true);
    }
    setTimeout(arguments.callee,200);
};

function $(id){
    return document.getElementById(id)
    };

},
switchAutoPage:function(){
    this.rF=!this.rF;
    var aE=document.getElementsByTagName('*');
    for(var i=0,l=aE.length;i<l;i++){
        if(aE[i].className=="tAP_switch"){
            aE[i].firstChild.nodeValue=this.rF?"AutoPage[OFF]":"AutoPage[ON]";
        }
    }
    }
};

window.addEventListener?window.addEventListener('load',tumblrAutoPager.init,false):window.attachEvent?window.attachEvent("onload",tumblrAutoPager.init):window.onload=tumblrAutoPager.init;
  View user's profile Private Nachricht senden
dcn

Dabei seit: 20.08.2008
Ort: -
Alter: 43
Geschlecht: Männlich
Verfasst So 10.07.2011 21:44
Titel

Antworten mit Zitat Zum Seitenanfang

verzähl mich dauernd * Keine Ahnung... *
  View user's profile Private Nachricht senden
immerIch

Dabei seit: 19.10.2010
Ort: #mein{display:block}
Alter: 35
Geschlecht: Männlich
Verfasst Mo 11.07.2011 09:25
Titel

Antworten mit Zitat Zum Seitenanfang

copy/paste in die gute alte Erdbeere rein, oder einfach nach "//HIER" suchen (zweitaccount war wohl so nett und hat`s markiert) *zwinker*
  View user's profile Private Nachricht senden
custommax
Threadersteller

Dabei seit: 09.07.2011
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 11.07.2011 12:19
Titel

Antworten mit Zitat Zum Seitenanfang

gut, das war vielleicht etwas unverschämt sich so ein großes snippet umschreiben zu lassen.. *zwinker*
aber danke shconmal fürs übersichtlich machen und den Hinweis. Doof, dass ich nur keine Ahnung von Javascript habe. Werds mir wohl oder übel mal beibringen.
Hab ein bisschen rumprobiert, aber height in width umzuschreiben tuts leider nicht Grins
Im Endeffekt gehts ja wahrscheinlich wirklich nur noch um die Funktion hier:
Code:
function watch_scroll(){
    var d=document.compatMode=="BackCompat"?document.body:document.documentElement;
    var r=d.scrollHeight-d.clientHeight-(d.scrollTop||document.body.scrollTop); // HIER
    if(r<d.clientHeight*2&&tAP.rF){
        tAP.rF=false;
        p++;
        sendRequest(addNextPage,"","GET","http://"+tAP.LN+"/page/"+p,true);
    }
    setTimeout(arguments.callee,200);
};


EDIT:
Ich habs hinbekommen, Javascript ist doch garnicht so unverschämnt unlogisch wie ich immer dachte.
So klappts:
Code:
function watch_scroll(){
    var d=document.compatMode=="BackCompat"?document.body:document.documentElement;
    var r=d.scrollWidth-d.clientWidth-(d.scrollLeft||document.body.scrollLeft); // HIER
    if(r<d.clientWidth*2&&tAP.rF){
        tAP.rF=false;
        p++;
        sendRequest(addNextPage,"","GET","http://"+tAP.LN+"/page/"+p,true);
    }
    setTimeout(arguments.callee,200);
};


Vielen Dank für den richtigen Ansatz Lächel


Zuletzt bearbeitet von custommax am Mo 11.07.2011 12:22, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen automatisch mit javascript horizontal und vertikal scrollen
[Javascript] iframe horizontal UND vertikal scrollen
[CSS] Zentrieren vertikal und horizontal
DIV vertikal 100% je Auflösung und horizontal in Relation
container horizontal und vertikal ausrichten.
Dreamweaver - Horizontal und vertikal ausrichten
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.