<marquee> nin tarayıcı uyum sorunu..

HTML, CSS, JavaScript ile ilgili genel konular.

<marquee> nin tarayıcı uyum sorunu..

İleti yaso19 12.01.2007, 11:49

Merhaba arkadaşlar,

size kodla anlatim..

Kod: Tümünü seç
<marquee direction="right" scrolldelay="150" loop="-1">
               <img src="resimler/Graphic11.png" />
               <img src="resimler/Graphic12.png" />
               <img src="resimler/Graphic13.png" />
               <img src="resimler/Graphic14.png" />
               <img src="resimler/Graphic15.png" />
               <img src="resimler/Graphic16.png" />
               <img src="resimler/Graphic17.png" />
               <img src="resimler/Graphic18.png" />
               <img src="resimler/Graphic19.png" />
               <img src="resimler/Graphic20.png" />
</marquee>


olarak html sayfama kod ekliyorum. Bu ie ve operada hiçbir sorun çıkartmazken; firefox 2.1 de çıkarıyor. 15-20 sn bomboş kalıyor, daha sonra 5-6 resim oynuyor, daha sonra yine bomboş oluyor, ve 1 dakka fln öyle bekliyor....

fakat bu kodları <table> içine alınca ffde hiçbir sorun çıkartmadan çalışıyor.. fakat ie de onun yerine düz bi çubuk çıkıo bu sefer :)

table kullandım, div kullandım, hiçbir türlü sorun çözülmedi :S js kullanmak istemiyorum, sayfam zaten js yüzünden biraz ağır, daha da yük bindirmek istemiyorum. bu sorunu çözebilecek bir yardımsever varmı?
Kullanıcı avatarı
yaso19
Üye
Üye
 
İleti: 531
Kayıt: 05.02.2006, 01:01
Konum: İzmir

İleti asdf29 12.01.2007, 14:00

http://www.istanbul.edu.tr/index.php

buranın kodlarını incele istersen.. sanırım script kullanmadan yapmışlar ama nasıl bilmiyorum.. :?
Kullanıcı avatarı
asdf29
Üye
Üye
 
İleti: 206
Kayıt: 24.03.2006, 15:05

İleti elvis 12.01.2007, 20:19

Aşağıdaki kodu kayan yazının çıkmasını istediğiniz yere koyunuz. İçine istediğiniz kadar div ekleyebilirsiniz. Her biri bir önceki div içindeki yazı bittikten sonra geçecektir. Yazılara span etiketi ile stil verebilirsiniz.
Bu yöntem her browserla uyumlu olduğu gibi web standartlarına da uygundur.

[syntax="html"]<script type="text/javascript" src="scr.js"></script>
<div id="scr">
<div><b><font color="#003399">Yazmak istedikleriniz</font></b>
<span style="background-color: #99FFCC">Yazmak istedikleriniz</span></div>
<div><b><font color="#003399">Yazmak istedikleriniz</font>
<span style="background-color: #99FFCC">Yazmak istedikleriniz</span></b></div>
</div>
[/syntax]
scr.js

[syntax="javascript"]/* Script to create a scrolling text news box. Takes teh news you give it and scrolls
those items across the screen for your users to see

Based on newsticker by www.fczbkk.sl/js/newsticker/

*/


// run init when the window loads.....
addEvent(window, "load", init);

function init() {
if (document.getElementById) {
tck = document.getElementById("scr");
if (tck.getElementsByTagName("div").length > 0) {
actual = 0;
step = 2;
speed = 15;
delay = 1000;
news = new Array();
// build an array of news - eg every seperate div provided in the div with
// id = "all".
for (i = 0; i < tck.getElementsByTagName("div").length; i++) {
news[i] = tck.getElementsByTagName("div")[i];
news[i].style.left = tck.offsetWidth;
}
// start the news rolling ....
rollNews();
// add listeners for when mouse goes over tck to stop and when it leaves
// tck to start again
addEvent(tck, "mouseover", stopNews);
addEvent(tck, "mouseout", rollNews);
}
}
}

function rollNews() {
// move left edge to left a bit
news[actual].style.left = parseInt(news[actual].style.left) - step + "px";

if (parseInt(news[actual].style.left) == tck.offsetWidth % step) {
// if that movement hasnt taken us off the edge of the div then wait
// a bit and move it again.
tick = setTimeout("rollNews()",delay);
}
else {
// if it has taken us over the edge then move to the next item in news array
if (parseInt(news[actual].style.left) <= 0-news[actual].offsetWidth) {
actual++;
// if at end of array then knock it back to start
if (actual == news.length) {actual = 0;}
news[actual].style.left = tck.offsetWidth;
}
// wait a bit and try again.
tick = setTimeout("rollNews()",speed);
}
}

function stopNews() {
clearTimeout(tick);
}

function addEvent(obj, evType, fn){
if (obj.addEventListener){
obj.addEventListener(evType, fn, true);
return true;
} else if (obj.attachEvent){
var r = obj.attachEvent("on"+evType, fn);
return r;
} else {
return false;
}
}[/syntax]
Hali hazırda bir stil şemanız (css) varsa aşağıdaki kodu içine ekleyiniz.
[syntax="css"]#scr {
height: 20px;
width: 100%;
position: relative;
overflow: hidden;
}

#scr div {
position: absolute;
white-space: nowrap;
}
[/syntax]
Stil şemanız yoksa yukarıdaki kodu css uzantılı olarak kaydedip (scr.css gibi) kayan yazının gözükeceği sayfalarda <head></head> tagları arasına aşağıdaki kodu ekleyiniz.

[syntax="html"]<link rel="stylesheet" href="scr.css" type="text/css">
[/syntax]
Kullanıcı avatarı
elvis
Üye
Üye
 
İleti: 34
Kayıt: 08.01.2006, 02:38
Konum: İstanbul

İleti CeRBeR 12.01.2007, 21:49

<marque ye height vermeyi denedin mi ?
Kullanıcı avatarı
CeRBeR
Üye
Üye
 
İleti: 232
Kayıt: 05.10.2005, 20:37

Cvp: <marquee> nin tarayıcı uyum sorunu..

İleti yaso19 13.01.2007, 00:07

evet height ekledim yine aynı oldu :S yapmadığım şey kalmadı.

Kod: Tümünü seç
<marquee direction="right" scrolldelay="150" loop="-1">yazı</marquee>

yaparsam eğer; heryerde her türlü çalışıyor.

Fakat;

Kod: Tümünü seç
<marquee direction="right" scrolldelay="150" loop="-1">RESİM!</marquee>


yapınca sorun oluyor :)

mesajımda demiştim, sitemde js çok kullandığımı, kayan yazı için htmlden faydalanmak istediğimi, boşuna siteyi kasmak istemediğimi..

js kodu vermenize gerek yok yani sağolun :)

anlatmak istediğimi tekrar anlatiyim bari...

marquee içinde yazı kullanınca aslanlar gibi çalışıyo; fakat, <img src="resim linki"> işin içine girince olan:
sadece marquee kodunu kullandıysam, IE de çalışıyor FF de çalışmıyor. marquee kodunu div yada table içinde kullandıysam FF de çalışıyor, IE de çalışmıyor, onun yerine düz bi çubuk çıkıyo :)


her neyse işte anlatabilmişimdir herhalde derdimi..

Not: şuan zaten zorunlu olarak js kullanıyorum kayan resim için, fakat dediğim gibi site ağır, üstünde video bgsound fln çalışıyor.. olabildiği kadar en kolay ve en sadesiyle yani "<marquee>" ile işi bitirmek istiyorum.
Kullanıcı avatarı
yaso19
Üye
Üye
 
İleti: 531
Kayıt: 05.02.2006, 01:01
Konum: İzmir

İleti elvis 13.01.2007, 02:31

marquee, Microsoft'un geliştirdiği ve sadece Internet Explorer'ın tam olarak desteklediği bir tagdır. Boşuna vakit kaybıdır bir nevi.
http://forum.zoque.net/www/22061-%22mar ... -problemi/
Kullanıcı avatarı
elvis
Üye
Üye
 
İleti: 34
Kayıt: 08.01.2006, 02:38
Konum: İstanbul


HTML, CSS, JS



Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 0 misafir