firstChild - не работает в FireFox
В ИЕ все работает, а вот в FF не хочет, в гугле не чего толкового не нашел, подскажите плиз в чем проблема ?
<html>
<head>
</head>
<body>
<div id="qwe">
<a href="javascript:alert('ok');">
<b>Go</b>
</a>
</div>
<br>
<input type="button" value="ok" onclick="qweqe();">
<script>
function qweqe(){
document.getElementById('qwe').firstChild.click();
}
</script>
</body>
</html>
|
<head>
</head>
<body>
<div id="qwe">
<a href="javascript:alert('ok');" name="rt">
<b>Go</b>
</a>
</div>
<br>
<input type="button" value="ok" onclick="qweqe();">
<script>
function qweqe(){
alert((document.getElementById('qwe').firstChild).name);
alert((document.getElementById('qwe').firstChild).nodeType);// тип 3-текстовый узел
}
</script>
</body>
http://javascript.ru/tutorial/dom/in...-dom-elementov |
дадада, Enter тоже текст !!!
вот так будет находить, но это костыль
<head>
</head>
<body>
<div id="qwe"><a href="javascript:alert('ok');" name="rt">
<b>Go</b>
</a>
</div>
<br>
<input type="button" value="ok" onclick="qweqe();">
<script>
function qweqe(){
alert((document.getElementById('qwe').firstChild).name);
alert((document.getElementById('qwe').firstChild).nodeType);// тип 3-текстовый узел
}
</script>
</body>
|
получить первый элемент проверить его тип, если не 1 -получить следующий -не вариант постоянно дёргать dom.
Получить все дочерние, первый из массива у какого тип 1-первый тег |
Может я не так объяснил или я не догнал что вы имеете введу :)
Попробую повторить, мне нужно чтоб при клике на <input type="button" value="ok" onclick="qweqe();"> Кликался
<a href="javascript:alert('ok');"><b>Go</b></a>
|
lamer,
Ccылки с Вариантом href="javascript: - не кликабельны программно Этим изредка пользуются, для хитрых входов на страницу логирования
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<a href="#" onclick="alert('ok');return false;"><b>Go</b></a><br />
<a href="javascript:alert('ok'):"><b>No</b></a><br /><br />
<input type="button" value="ok" onclick="qweqe();"><br />
<script type="text/javascript">
function qweqe() {
$("a:contains('Go')").click()
alert('Ccылка "Go" обнаружена - и Кликается\nhref='+$("a:contains('Go')").attr("href"))
$("a:contains('No')").click();
alert('Ccылка "No" обнаружена - но не Кликается программно\nhref='+$("a:contains('No')").attr("href"))
}
</script>
|
Цитата:
<a href="javascript:alert('ok');"><b>Go</b></a>
не первый потомок. у <div id="qwe">. Ссылку на статью от какой начинать копать я дал.Тем более NoResponse, ясно вам сказал что первый потомок это Ентер. -поскольку он создаёт текстовый узел. |
Господа, спасибо что откликнулись, но презнатсья я не чего не понял как быть с этими потомками, понял что у меня третий потомок, а я указывал первый, как сделать третий я не нашел в гугле ;)
Выкрутился по другому
function qweqe(){
document.getElementById('qwe').getElementsByTagName('a')[0].click();
}
|
Уважаемые, помогите плиз ещё разок, другой немного сценарий не работает в фаерфоксе.
<html>
<head>
</head>
<body>
<form>
<td id="aaa"><input type="button" onclick="alert('ok');" value="OK"></td>
<br><br>
<input type="button" onclick="delet();" value="Click" class="button confirm">
</form>
<script>
function delet(){
document.getElementById('aaa').document.getElementsByTagName('input')[0].click();
}
</script>
</body>
</html>
В IE все работает, а вот в фаерфоксе не хочет, в чем проблема ? |
<html>
<head>
</head>
<body>
<form>
<div id="aaa"><input type="button" onclick="alert('ok');" value="OK"></div>
<br><br>
<input type="button" onclick="delet();" value="Click" class="button confirm">
</form>
<script>
function delet(){
document.getElementById('aaa').getElementsByTagName('input')[0].click();
}
</script>
</body>
</html>
|
Да блин, я вообще не чего не понимаю, я пробовал этот вариант что вы уважаемый Deff предложили он НЕ РАБОТАЛ.
Ваш код скопировал попробовал - работает Вообще, я в шоке, спасибо =) |
ааа))
Я понял, вы <div> поставили, с <div> да работает, но мне нужен вариант с <td> ;) |
lamer,
<div style="display:inline-block" по стилю тож самое |
| Часовой пояс GMT +3, время: 08:16. |