Копировать div в input - Проблемма в FF
Здравствуйте.
Впервые с таким сталкиваюсь, в FF не работает код а в IE работает, хотя обычно наоборот =) Подскажите в чем моя ошибка ?
<html>
<head>
</head>
<body>
<div id="clonDiv">To the Game: Sapranno,<abbr title="TitleGame">WOW</abbr># 00235568</div>
<form id="form">
<input type="button" value="CloneDiv" onclick="clone();">
<br>
</form>
<script>
function clone() {
var input = document.createElement('input');
input.type = 'text';
input.value = '';
input.id = 'cln';
input.name = 'cln';
document.getElementById('form').appendChild(input);
document.getElementById('cln').value = document.getElementById('clonDiv').innerText;
}
</script>
</body>
</html>
|
у FF нет свойства .innerText; используйте для него textContent
|
Цитата:
Хотелось бы найти кроссбраузерный вариант, хотябы чтоб работал в FF/IE А innerHTML мне к сожалению не подходит :( Может кто-то знает альтернативу ? |
Цитата:
if('\v'=='v'){document.getElementById('cln').value = document.getElementById('clonDiv').innerText;
} else {document.getElementById('cln').value = document.getElementById('clonDiv').textContent;}
|
Цитата:
|
Цитата:
<html>
<head>
</head>
<body>
<div id="clonDiv">To the Game: Sapranno,<abbr title="TitleGame">WOW</abbr># 00235568</div>
<form id="form">
<input type="button" value="CloneDiv" onclick="clone();">
<br>
</form>
<script>
function clone() {
var input = document.createElement('input'),
cloneDiv = document.getElementById('clonDiv');
input.type = 'text';
input.value = '';
input.id = 'cln';
input.name = 'cln';
document.getElementById('form').appendChild(input);
document.getElementById('cln').value = cloneDiv.textContent || cloneDiv.innerText || "";
}
</script>
</body>
</html>
|
devote прикольно :)
document.getElementById('cln').value = cloneDiv.textContent || cloneDiv.innerText || "";
Это получается FF и IE возьмет тот метод который он понимает ? А для чего кавычки в конце ? |
Цитата:
Цитата:
|
devote понял, спасибо. Очень интересный вариант.
|
| Часовой пояс GMT +3, время: 18:31. |