Вход

Просмотр полной версии : Атрибут id (проблема)


nemo4430
27.08.2012, 22:33
Есть такой код:
<script type="text/javascript">
function f_blink() {
if(document.getElementById("blink").style.visibility=="visible") document.getElementById("blink").style.visibility = "hidden";
else document.getElementById("blink").style.visibility = "visible";
}
setInterval("f_blink();", 500);
</script>
Даный скрипт создает мигающий текст. Мигающий текст делается так:
<span id="blink">Мигающий текст</span>
Но есть проблема: таким способом можно сделать мигащим только один текст. Второй текст мигать не будет. Помогите решить проблему. Буду благдарен!

Dim@
27.08.2012, 22:38
вызывайте функцию с параметром - ид

function f_blink(id) {
if(document.getElementById(id).style.visibility=="visible") document.getElementById(id).style.visibility = "hidden";
else document.getElementById(id).style.visibility = "visible";
setInterval("f_blink(" + id + ")", 500);
}
f_blink("blink");

nemo4430
27.08.2012, 22:56
Не работает...

lord2kim
27.08.2012, 23:09
nemo4430,

<span id="blink">Мигающий текст</span>
<span id="blink2">Мигающий текст 2</span>
<script type="text/javascript">
function f_blink(id) {
if(document.getElementById(id).style.visibility=="visible") document.getElementById(id).style.visibility = "hidden";
else document.getElementById(id).style.visibility = "visible";
}
setInterval("f_blink('blink');", 500);
setInterval("f_blink('blink2');", 1000);
</script>

Deff
27.08.2012, 23:24
<style type="text/css">
.blink {
text-decoration:blink;

}
.adasd {
color:red;
}
</style>






<span id=bl1 class="adasd">AAAA</span><br />
===========<br />
<span id=bl2>ББББ</span>








<script type="text/javascript">
function Blink(id) {
var a=document.getElementById(id);
var b=a.className.toString();

if(b.replace(/blink/g,'')!=''){
a.className=b+' '+'blink';
} else a.className='blink';
}
Blink('bl1');
Blink('bl2')
</script>

nemo4430
29.08.2012, 23:10
text-decoration:blink;

Этот способ, по моему, поддерживается не всеми браузерами.

nemo4430
29.08.2012, 23:14
nemo4430,

<span id="blink">Мигающий текст</span>
<span id="blink2">Мигающий текст 2</span>
<script type="text/javascript">
function f_blink(id) {
if(document.getElementById(id).style.visibility=="visible") document.getElementById(id).style.visibility = "hidden";
else document.getElementById(id).style.visibility = "visible";
}
setInterval("f_blink('blink');", 500);
setInterval("f_blink('blink2');", 1000);
</script>

А одним идентификатором нельзя?

bes
29.08.2012, 23:20
заключите всё мигающее в блок и скрывайте/показывайте его

Deff
29.08.2012, 23:20
Этот способ, по моему, поддерживается не всеми браузерами.
Сейчас все поддерживают, Опера с 10 версии; Firefox - тоже уже давно (собственно они и не поддерживали

wawandas
30.08.2012, 10:15
а если css правило text-decoration:blink;

bes
30.08.2012, 10:46
а если css правило text-decoration:blink;


<style>
.blink > span {
text-decoration: blink;/*FF, Opera*/
}
</style>

<div class="blink">
<span>text1</span>
<span>text2</span>
<div>text3</div>
</div>



PS: хм, или это был не вопрос, так Deff уже предложил, насчёт поддержки: только FF и опера http://htmlbook.ru/css/text-decoration

wawandas
30.08.2012, 10:54
PS: хм, или это был не вопрос, так Deff уже предложил, насчёт поддержки: только FF и опера http://htmlbook.ru/css/text-decoration

не увидел :(