Javascript-форум (https://javascript.ru/forum/)
-   Firefox/Mozilla (https://javascript.ru/forum/css-html-firefox-mizilla/)
-   -   Не работает click() (https://javascript.ru/forum/css-html-firefox-mizilla/13253-ne-rabotaet-click.html)

usg 22.11.2010 18:23

Не работает click()
 
Не работает click
[code]
<a id="ref" href = "http://javascript.ru/forum">
<span onclick="ref.click()">Форум</span>[
/CODE]
В IE и Opera работает.
Код:

<a id="ref" href = "http://javascript.ru/forum">
<span onclick='document.getElementById("ref").click()'>Форум</span>

Также не работает. Как правильно.

ksa 22.11.2010 19:03

usg, что ты в итоге хочешь? Кликнуть по ссылке? Так это и так сработает


<a id="ref" href = "http://javascript.ru/forum">
   <span>Форум</span>
</a>

usg 22.11.2010 19:10

Мне нужно именно кликнуть. Не только по ссылке.

ksa 22.11.2010 19:12

Цитата:

Сообщение от usg
Мне нужно именно кликнуть

Таки кликни... Что мешает?
Цитата:

Сообщение от usg
Не только по ссылке

Почем еще?

monolithed 22.11.2010 20:39

Так что ли?

<script type="text/javascript">
window.onload = function(){
    document.getElementsByTagName('p')[0].onclick = function(){
       location.replace("http://www.ya.ru");
    };
};
</script>

<p>click</p>

usg 23.11.2010 00:28

Это уже ближе. Вопрос был в том, чтобы написать функцию, которая бы
открывала ссылку при нажатии на кнопку, картинку и т.д. в том же окне или в новом
С click не получается. Получилось по другому.
Код:

<form action="" name="ref" id="ref" target="_self"></form>
<span onclick='goto("http://www.yandex.ru")'>Yandex</span><br>
<span onclick='goto("http://www.mail.ru",1)'>Mail</span>
<script language=yavascript>
function goto(href,blank){
  ref.action = href
  ref.target = (!blank) ? "_self" : "_blank"
  ref.submit()
}
</script>

Yandex открывает в том же окне, а Маil - в новом.
Такой подход позволяет создавать не стандартные ссылки.
Работает во всех браузерах.

usg 23.11.2010 01:46

Небольшое дополнение.
К <form> нужно добавить method="POST"

ksa 23.11.2010 09:11

Цитата:

Сообщение от usg
Такой подход позволяет создавать не стандартные ссылки.

Сам термин валит наповал. :lol:

Оказывается нужно-то было - просто отправлять форму на разные УРЛы... :D

monolithed 23.11.2010 09:14

Чем не угодил мой пример?

Цитата:

Сообщение от usg
<form action="" name="ref" id="ref" target="_self"></form> <span onclick='goto("http://www.yandex.ru")'>Yandex</span><br> <span onclick='goto("http://www.mail.ru",1)'>Mail</span> <script language=yavascript> function goto(href,blank){ ref.action = href ref.target = (!blank) ? "_self" : "_blank" ref.submit() } </script>

Ну и бредятина же

Цитата:

Сообщение от usg
К <form> нужно добавить method="POST"

Добавьте:D

bizon120687 04.12.2010 03:34

знаете я хочу добавить эфект на страницу всётаки зима падают снежинки но вот в чём дело иногда вобще не падают иногда до половины сайта в мозиле их вообще не принемает что делать вот скрипт

<script language="JavaScript">
<!-- fall Script by kurt.grigg@virgin.net

Amount=30; //Smoothness! depends on image file size, the smaller the size the more you can use!

//Pre-load your image below!
Image0=new Image();
Image0.src="flake1.gif";
Image1=new Image();
Image1.src="flake2.gif";
Image2=new Image();
Image2.src="flake3.gif";
Image3=new Image();
Image3.src="flake4.gif";
Image4=new Image();
Image4.src="flake5.gif";

grphcs=new Array(5)
grphcs[0]="flake1.gif"
grphcs[1]="flake2.gif"
grphcs[2]="flake3.gif"
grphcs[3]="flake4.gif"
grphcs[4]="flake5.gif"

Ypos=new Array();
Xpos=new Array();
Speed=new Array();
Step=new Array();
Cstep=new Array();
ns=(document.layers)?1:0;
if (ns){
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+rndPic+"></LAYER>");
}
}
else{
document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs[P];
document.write('<img id="si" src="'+rndPic+'" style="position:absolute;top:0px;left:0px">');
}
document.write('</div></div>');
}
WinHeight=(document.layers)?window.innerHeight:win dow.document.body.clientHeight;
WinWidth=(document.layers)?window.innerWidth:windo w.document.body.clientWidth;
for (i=0; i < Amount; i++){
Ypos[i] = Math.round(Math.random()*WinHeight);
Xpos[i] = Math.round(Math.random()*WinWidth);
Speed[i]= Math.random()*3+2;
Cstep[i]=0;
Step[i]=Math.random()*0.1+0.05;
}
function fall(){
var WinHeight=(document.layers)?window.innerHeight:win dow.document.body.clientHeight;
var WinWidth=(document.layers)?window.innerWidth:windo w.document.body.clientWidth;
var hscrll=(document.layers)?window.pageYOffset:docume nt.body.scrollTop;
var wscrll=(document.layers)?window.pageXOffset:docume nt.body.scrollLeft;
for (i=0; i < Amount; i++){
sy = Speed[i]*Math.sin(90*Math.PI/180);
sx = Speed[i]*Math.cos(Cstep[i]);
Ypos[i]+=sy;
Xpos[i]+=sx;
if (Ypos[i] > WinHeight){
Ypos[i]=-60;
Xpos[i]=Math.round(Math.random()*WinWidth);
Speed[i]=Math.random()*5+2;
}
if (ns){
document.layers['sn'+i].left=Xpos[i];
document.layers['sn'+i].top=Ypos[i]+hscrll;
}
else{
si[i].style.pixelLeft=Xpos[i];
si[i].style.pixelTop=Ypos[i]+hscrll;
}
Cstep[i]+=Step[i];
}
setTimeout('fall()',10);
}
//-->
</script>


Часовой пояс GMT +3, время: 01:44.