Hov. Du er ikke logget ind.
DU SKAL VÆRE LOGGET IND, FOR AT INTERAGERE PÅ DENNE SIDE

Hjælp til Css i chrome

Side 1 ud af 1 (2 indlæg)
  • 1
Tilmeldt 7. Jan 13
Indlæg ialt: 60
Skrevet kl. 09:09
Hvor mange stjerner giver du? :

Hej Aminoer

Jeg her en image pop up på, som henter et større image ved mouse over. Funktionen er indsat i en list view, og virker fint o Explore, men har en positions fejl  i Chrome. Når listen er længere end skærmen så pupper image op i toppen af skærmen når man har scrollet ned. Det skal siges at det er en søge side på et intra net, når man kommer ind på siden, kan man søge efter dele, og denne søgning danner listview, uden at opdatere siden.

Har i et bud hvordan jeg får image pup up til at virke ved scroll i Chrome.

MVH

Oliver

Html delen ser sådan ud:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>

<link rel="stylesheet" href="style.css" type="text/css">
<script src="mouseover_popup.js" language="JavaScript" type="text/javascript"></script>


</head>

<body>
<div style="display: none; position: absolute; z-index: 110; left: 400; top: 100; width: 15; height: 15" id="preview_div"></div>


<img src="99-thumbnail.png" border="0" onmouseover="showtrail('99-smart.png','hej',310,440)" onmouseout="hidetrail()"></a>



</body>
</html> CSS : a:hover {
text-decoration:none;
}

a {
text-decoration:none;
}

#interface1 {
z-index:1;
}

#loader_container {
text-align:center;
position:absolute;
top:40%;
width:100%}

#loader {
font-family:Tahoma, Helvetica, sans;
font-size:10px;
color:#000000;
background-color:#FFFFFF;
padding:10px 0 16px 0;
margin:0 auto;
display:block;
width:135px;
border:1px solid #6A6A6A;
text-align:left;
z-index:255;
}

#progress {
height:5px;
font-size:1px;
width:1px;
position:relative;
top:1px;
left:10px;
background-color:#9D9D94
}

#loader_bg {
background-color:#EBEBE4;
position:relative;
top:8px;left:8px;height:7px;
width:113px;font-size:1px
}

.border_preview{
z-index:100;
position:absolute;
background: #fff;
border: 1px solid #444;
}

.preview_temp_load {
vertical-align:middle;
text-align:center;
padding: 10px;
}
.preview_temp_load img{
vertical-align:middle;
text-align:center;
}



/*Image Title Styling*/

.title_h2 {
padding:12px 0 0 18px;
}

h2 {
font-size:14px;
padding:0;
margin:0;
font-family: "century gothic";
} Javascript: var offsetfrommouse=[15,25]; //image x,y offsets from cursor position in pixels. Enter 0,0 for no offset
var displayduration=0; //duration in seconds image should remain visible. 0 for always.

var defaultimageheight = 40; // maximum image size.
var defaultimagewidth = 40; // maximum image size.

var timer;

function gettrailobj(){
if (document.getElementById)
return document.getElementById("preview_div").style
}

function gettrailobjnostyle(){
if (document.getElementById)
return document.getElementById("preview_div")
}


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


function hidetrail(){
gettrailobj().display= "none";
document.onmousemove=""
gettrailobj().left="-500px"
clearTimeout(timer);
}

function showtrail(imagename,title,width,height){
i = imagename
t = title
w = width
h = height
timer = setTimeout("show('"+i+"',t,w,h);",200);
}
function show(imagename,title,width,height){

var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth - offsetfrommouse[0]
var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight)

if( (navigator.userAgent.indexOf("Konqueror")==-1 || navigator.userAgent.indexOf("Firefox")!=-1 || (navigator.userAgent.indexOf("Opera")==-1 && navigator.appVersion.indexOf("MSIE")!=-1)) && (docwidth>650 && docheight>500)) {
( width == 0 ) ? width = defaultimagewidth: '';
( height == 0 ) ? height = defaultimageheight: '';

width+=30
height+=55
defaultimageheight = height
defaultimagewidth = width

document.onmousemove=followmouse;


newHTML = '<div class="border_preview" style="width:'+ width +'px;height:'+ height +'px"><div id="loader_container"><div id="loader"><div align="center">Loading image preview...</div><div id="loader_bg"><div id="progress"> </div></div></div></div>';
newHTML = newHTML + '<h2 class="title_h2">' + ' '+title + '</h2>'

newHTML = newHTML + '<div class="preview_temp_load"><img onload="javascript:remove_loading();" src="' + imagename + '" border="0"></div>';
newHTML = newHTML + '</div>';

if(navigator.userAgent.indexOf("MSIE")!=-1 && navigator.userAgent.indexOf("Opera")==-1 ){
newHTML = newHTML+'<iframe src="about:blank" scrolling="no" frameborder="0" width="'+width+'" height="'+height+'"></iframe>';
}

gettrailobjnostyle().innerHTML = newHTML;
gettrailobj().display="block";
}
}

function followmouse(e){

var xcoord=offsetfrommouse[0]
var ycoord=offsetfrommouse[1]

var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15
var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight)

if (typeof e != "undefined"){
if (docwidth - e.pageX < defaultimagewidth + 2*offsetfrommouse[0]){
xcoord = e.pageX - xcoord - defaultimagewidth; // Move to the left side of the cursor
} else {
xcoord += e.pageX;
}
if (docheight - e.pageY < defaultimageheight + 2*offsetfrommouse[1]){
ycoord += e.pageY - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + e.pageY - docheight - truebody().scrollTop));
} else {
ycoord += e.pageY;
}

} else if (typeof window.event != "undefined"){
if (docwidth - event.clientX < defaultimagewidth + 2*offsetfrommouse[0]){
xcoord = event.clientX + truebody().scrollLeft - xcoord - defaultimagewidth; // Move to the left side of the cursor
} else {
xcoord += truebody().scrollLeft+event.clientX
}
if (docheight - event.clientY < (defaultimageheight + 2*offsetfrommouse[1])){
ycoord += event.clientY + truebody().scrollTop - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + event.clientY - docheight));
} else {
ycoord += truebody().scrollTop + event.clientY;
}
}
gettrailobj().left=xcoord+"px"
gettrailobj().top=ycoord+"px"

}

/* alt.js */

var timerId = null
var obj = new Array()

function prepareShowAlt(event){
idd = this.id
if (idd.search("title_") == 0){
idd = idd.substring(6)
if ((typeof titles != "undefined") && (typeof titles[idd] != "undefined") && titles[idd].length > 0){
text = titles[idd]
}else{
return;
}
}else{
return
}

x = 0;
y = 0;
oX = 0;
if (document.all){
x = window.event.clientX
y = window.event.clientY + document.body.scrollTop
}else{
x = event.clientX - oX
y = event.clientY + window.scrollY
}
x += Math.round(xs[idd])
y += Math.round(ys[idd])

obj = new Array()
obj[0] = text
obj[1] = x
obj[2] = y

timerId = setTimeout("showAlt()", 500);
}

function showAlt(){
text = obj[0]
x = obj[1]
y = obj[2]
altd = document.getElementById('altDiv')
altd.innerHTML = "<table cellpadding=3 cellspacing=0 style='background-color: #EEF6FF; border: solid #6A91B4 1px; font-family: tahoma;" + (text.length > 30 ? "width: 200px;" : "") +"'><tr><td style='color: #414041; font-size: 11px;'>" + text + "</td></tr></table>"
altd.style.left = Math.min(x + 10,document.body.clientWidth-201)
altd.style.top = y
altd.style.display = 'inline'
}

function hideAlt(){
obj = new Array()
clearTimeout(timerId)
altd = document.getElementById('altDiv')
altd.innerHTML = ""
altd.style.left = -100
altd.style.top = -100
altd.style.display = 'none'
}

function initAlts(){
arr = document.getElementsByName('title')
titles = new Array()
xs = new Array()
ys = new Array()
for (i=0; i<arr.length; i++){
itemm = arr.item(i)
itemm.onmouseover = prepareShowAlt
itemm.onmouseout = hideAlt
itemm.id = "title_" + i
titlesIdea = itemm.title
xsIdea = (typeof itemm.xs == 'undefined' ? 0 : itemm.xs)
ysIdea = (typeof itemm.ys == 'undefined' ? 0 : itemm.ys)
itemm.title = ""
}
}

/* loader.js */

var t_id = setInterval(animate,20);
var pos=0;
var dir=2;
var len=0;

function animate()
{
var elem = document.getElementById('progress');
if(elem != null) {
if (pos==0) len += dir;
if (len>32 || pos>79) pos += dir;
if (pos>79) len -= dir;
if (pos>79 && len==0) pos=0;
elem.style.left = pos;
elem.style.width = len;
}
}

function remove_loading() {
this.clearInterval(t_id);
var targelem = document.getElementById('loader_container');
targelem.style.display='none';
targelem.style.visibility='hidden';
var t_id = setInterval(animate,60);
}
Tilmeldt 20. Apr 07
Indlæg ialt: 16014
30% af profil udfyldt
Skrevet kl. 03:36
Hvor mange stjerner giver du? :

Hej Oliver.

Jeg tror ikke dette forum er det rigtige sted at poste dette. Prøv Stackoverflow.

Udover det, kan det være fordi din container omkring liste elementet ikke har en position og derfor tager chrome udgangspunkt i din <body>. Jeg har nok brug for at se siden live, hvis jeg skal kunne hjælpe yderligere. Det er ikke lige til at gennemskue din kode ovenfor.

Side 1 ud af 1 (2 indlæg)