Центриране - JS

  • Автор Автор bsd
  • Начална дата Начална дата

bsd

Registered
Добър вечер,
Опитвам се да центрирам един js за bgtop гласуване, пробвах всевъзможни щуротии за да го оправя, но нищо не стана ...

Код:
var persistclose=1 //set to 0 or 1. 1 means once the bar is manually closed, it will remain closed for browser session
function setMargin()
{
document.getElementById("table").style.margin = "50% 50%"
}


function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function closebar(){
if (persistclose)
document.cookie="remainclosed=1"
document.getElementById("topbar").style.visibility="hidden"
}

function staticbar(){
barheight=document.getElementById("topbar").offsetHeight
var ns = (navigator.appName.indexOf("Netscape") != -1) || window.opera;
var d = document;
function ml(id){
var el=d.getElementById(id);
if (!persistclose || persistclose && get_cookie("remainclosed")=="")
el.style.visibility="visible"
if(d.layers)el.style=el;
el.sP=function(x,y){this.style.right=x+"px";this.style.top=y+"px";};
el.x = startX;
if (verticalpos=="fromtop")
el.y = startY;
else{
el.y = ns ? pageYOffset + innerHeight : iecompattest().scrollTop + iecompattest().clientHeight;
el.y -= startY;
}
return el;
}
window.stayTopLeft=function(){
if (verticalpos=="fromtop"){
var pY = ns ? pageYOffset : iecompattest().scrollTop;
ftlObj.y += (pY + startY - ftlObj.y)/8;
}
else{
var pY = ns ? pageYOffset + innerHeight - barheight: iecompattest().scrollTop + iecompattest().clientHeight - barheight;
ftlObj.y += (pY - startY - ftlObj.y)/8;
}
ftlObj.sP(ftlObj.x, ftlObj.y);
setTimeout("stayTopLeft()", 10);
}
ftlObj = ml("topbar");
stayTopLeft();
}

if (window.addEventListener)
window.addEventListener("load", staticbar, false)
else if (window.attachEvent)
window.attachEvent("onload", staticbar)
else if (document.getElementById)
window.onload=staticbar

Ще ми се,ако можете да го центрирате и ако има някакви грешки да се поправят. Благодаря предварително !
 
е можеш да го центрираш с CSS като видиш какво точно ти създава javascripta и каде го слага и си го стилваш само.
 
Код:
var persistclose=1 //set to 0 or 1. 1 means once the bar is manually closed, it will remain closed for browser session
var startX = 230 //set x offset of bar in pixels
var startY = 250 //set y offset of bar in pixels
var verticalpos="fromtop" //enter "fromtop" or "frombottom"

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function closebar(){
if (persistclose)
document.cookie="remainclosed=1"
document.getElementById("topbar").style.visibility="hidden"
}

function staticbar(){
barheight=document.getElementById("topbar").offsetHeight
var ns = (navigator.appName.indexOf("Netscape") != -1) || window.opera;
var d = document;
function ml(id){
var el=d.getElementById(id);
if (!persistclose || persistclose && get_cookie("remainclosed")=="")
el.style.visibility="visible"
if(d.layers)el.style=el;
el.sP=function(x,y){this.style.right=x+"px";this.style.top=y+"px";};
el.x = startX;
if (verticalpos=="fromtop")
el.y = startY;
else{
el.y = ns ? pageYOffset + innerHeight : iecompattest().scrollTop + iecompattest().clientHeight;
el.y -= startY;
}
return el;
}
window.stayTopLeft=function(){
if (verticalpos=="fromtop"){
var pY = ns ? pageYOffset : iecompattest().scrollTop;
ftlObj.y += (pY + startY - ftlObj.y)/8;
}
else{
var pY = ns ? pageYOffset + innerHeight - barheight: iecompattest().scrollTop + iecompattest().clientHeight - barheight;
ftlObj.y += (pY - startY - ftlObj.y)/8;
}
ftlObj.sP(ftlObj.x, ftlObj.y);
setTimeout("stayTopLeft()", 10);
}
ftlObj = ml("topbar");
stayTopLeft();
}

if (window.addEventListener)
window.addEventListener("load", staticbar, false)
else if (window.attachEvent)
window.attachEvent("onload", staticbar)
else if (document.getElementById)
window.onload=staticbar

всъщност това е кода ...

проблема е че се движи кода и ако го сложа с CSS не знам дали ще стане ...

http://bgfusion.com/downloads.php?cat_id=4

тук използват същия бутон за гласуване, но моят е малко моднат като визия ...
 
Тук е пълно със специалисти в областа и щом до сега не сте ми отговорили значи няма начин, така че благодаря много все пак! :)
 
bsd каза:
Тук е пълно със специалисти в областа и щом до сега не сте ми отговорили значи няма начин, така че благодаря много все пак! :)
Кое няма как да стане? Да центрираш само с CSS ли?

http://web-tourist.net/login/login/view.php?st=2402
 
Определено не става !!
Наистина в центъра е, но седи неподвижно, а имам доста съдържание в сайта и само закрива съдържанието ...
 
Ами не знам с някакъв JS с този в момента се плъзга по екрана ...
http://bgfusion.com/downloads.php?cat_id=4
Ето както е тук ...
 
bsd каза:
Ами не знам с някакъв JS с този в момента се плъзга по екрана ...
http://bgfusion.com/downloads.php?cat_id=4
Ето както е тук ...
position:fixed;
http://jsfiddle.net/ek6My/
 
lam3r4370 каза:
bsd каза:
Ами не знам с някакъв JS с този в момента се плъзга по екрана ...
http://bgfusion.com/downloads.php?cat_id=4
Ето както е тук ...
position:fixed;
http://jsfiddle.net/ek6My/

сега е така, не може ли да се центрира?
 
bsd каза:
lam3r4370 каза:
bsd каза:
Ами не знам с някакъв JS с този в момента се плъзга по екрана ...
http://bgfusion.com/downloads.php?cat_id=4
Ето както е тук ...
position:fixed;
http://jsfiddle.net/ek6My/

сега е така, не може ли да се центрира?
Може.Задай му top,left(или right). със съответните стойности.
 
Това съм го направил, но искам да се центрира за всички, защото в момента единствено е центрирано за 1024 на 768, за останалите резолюции не е центрирано ...
 
Тук вече има един номер, който винаги се ползва.
Задаваш на елемента следните стойности в CSS:
Код:
#element{
    position: fixed;
    top: 50%;
    left: 50%;
    margin: -100px 0 0 -200px;
   /* Където  100px е полувисочината на кутийката, а 200px е полуширината на кутийката */
}
:)
 
Центрира се, но идва проблем при скролирането на страницата. Когато тръгне да се скролира елемента избързва и след съвсем малко не се вижда въобще ...
 

Back
Горе