Показать сообщение отдельно
  #20 (permalink)  
Старый 04.07.2012, 00:47
Аспирант
Отправить личное сообщение для autosoft Посмотреть профиль Найти все сообщения от autosoft
 
Регистрация: 23.08.2008
Сообщений: 30

Спасибо всем за ответы! Я как раз и с button вариант попробовал.

Мне div нужен как контейнер. В таком div свой контрол нарисован. С рисунками и со своей логикой. И ему нужно фокус принимать. И отдавать конечно тоже.
Input не подходит потому что не контейнер. Или я ошибаюсь?
Заменил input на button. Вот так:
<script type="text/javascript">

function dofocus(self) {

    document.body.appendChild(document.createTextNode('focus('+self.name+'), '))
}

function doblur(self) {

    document.body.appendChild(document.createTextNode('blur('+self.name+'), '))
}

</script>
<form action='/'>
<table>
    <tr>
        <td>
            <input type="file" name='file1' onfocus='dofocus(this)' onblur='doblur(this)'>
            <button name='button1' onfocus='dofocus(this)' onblur='doblur(this)'>Button1</button>
        </td>
    </tr>
    <tr>
        <td>
            <input type="file" name='file2' onfocus='dofocus(this)' onblur='doblur(this)'>
            <button name='button2' onfocus='dofocus(this)' onblur='doblur(this)'>Button2</button>
        </td>
    </tr>
    <tr>
        <td>
            <input type="file" name='file3' onfocus='dofocus(this)' onblur='doblur(this)'>
            <button name='button3' onfocus='dofocus(this)' onblur='doblur(this)'>Button3</button>
        </td>
    </tr>
</table>
</form>

И снова события onblur нет у <input type=file>.
Почему он нужен? <input type=file> на странице невидим и сам находится в div.
По-сути этот div - стилизованная кнопка для загрузки файлов.
Поэтому что бы его "правильно" нарисовать нужно событие onblur <input type=file>.
А его в Opera почему-то нет.
Ответить с цитированием