Willkommen auf dem Portal für Mediengestalter
|
|
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 |
|
|
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;
|
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
Verfasst So 10.07.2011 09:30
Titel
|
|
|
Ja. Viel Spaß.
|
|
|
|
|
Anzeige
|
|
|
zweitaccount
Dabei seit: 25.01.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 10.07.2011 20:33
Titel
|
|
|
pantonine hat geschrieben: | Ja. Viel Spaß. |
das dachte ich mir auch eben
Hier einmal lesbar - falls jemand den nerv dazu hat - Zeile 221 ist wahrscheinlich interessant .
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; |
|
|
|
|
|
dcn
Dabei seit: 20.08.2008
Ort: -
Alter: 44
Geschlecht:
|
Verfasst So 10.07.2011 21:44
Titel
|
|
|
verzähl mich dauernd
|
|
|
|
|
immerIch
Dabei seit: 19.10.2010
Ort: #mein{display:block}
Alter: 36
Geschlecht:
|
Verfasst Mo 11.07.2011 09:25
Titel
|
|
|
copy/paste in die gute alte Erdbeere rein, oder einfach nach "//HIER" suchen (zweitaccount war wohl so nett und hat`s markiert)
|
|
|
|
|
custommax
Threadersteller
Dabei seit: 09.07.2011
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 11.07.2011 12:19
Titel
|
|
|
gut, das war vielleicht etwas unverschämt sich so ein großes snippet umschreiben zu lassen..
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
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
Zuletzt bearbeitet von custommax am Mo 11.07.2011 12:22, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
[Javascript] iframe horizontal UND vertikal scrollen
automatisch mit javascript 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
|
|
|
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.
|
|