Что нового

[Сеть, интернет] Как в IE развернуть форму, разворачивающуюся при наведении мыши.

Juffin

Новичок
Сообщения
3
Репутация
0
Доброго времени суток. Не смог придумать как заставить развернуться форму, которая разворачивается при наведении курсора, кроме как навести курсор :smile:
Есть вот такая хитрая форма входа:
Код:
 <li id="login">
        <a href="javascript:void(0)">логин</a>
        <form class="dropdown" name="loginformtop" method="post" action="https://сайт.com/" onsubmit="DLGAtE('Form Tracking', 'Logon', 'Header top right');">
            <a class="tab" href="javascript:void(0)">логин</a>
            <dl>
                <dt>
                    <label for="f_users_email">имя пользователя</label>
                </dt>
                <dd>
                    <input type="text" name="f_users_email" id="f_users_email" value="имя пользователя или электронная почта" class="top_fld" onfocus="if(this.value=='имя пользователя или электронная почта')this.value=''" autocomplete="off" />
                </dd>
                <dt>
                    <label for="f_users_password">пароль</label>
                </dt>
                <dd>
                    <input type="password" name="f_users_password" id="f_users_password" class="top_fld" autocomplete="off" />
                </dd>
            </dl>
            <a href="/%D0%97%D0%B0%D0%B1%D1%8B%D0%BB%D0%B8-%D0%92%D0%B0%D1%88-%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8C__do_forgotpass.html">Забыли Ваш пароль?</a>
            <div class="buttonBig Bg">
                <div>
                    <div>
                        <input type="submit" value="логин" />
                    </div>
                </div>
            </div>
            <input type="hidden" name="f_sDPSC" value="Pj8v1U0U1|YQdVZDVxfHoyBVf2sjI6cnIvYjI3tSIlYWpl5WszdTdzV3cvNkI6QTo6O3O6MDszUlOwOnM6V1cyV2c1lkIyeSlwEDtzbjI6NjE6M2IklEdpNDajpWctbFUzNnMxMjI7NzEiUzc7UDO7sjI0em4pNzoCMio7ozV7YnOiQ2auB3QlRSIhcWa0OWpiYXNmIytz42OiQnSl50ZzOWcmZWFiITNhozcwO2N6E2Oix2bpplVpOWaiInoiZ2OxdztptTMzcjI6IjO4OjN60XJnZS47ojJ6UzYiQ0OVJiOzo24zNSeiZWJyaSdjIntz42c7AnNzoTZ9czo01joiIjRmM3xhYTUfVnc7YWN64jpicmbianowYWM6djxptjIxIWIhJjO7cjJ6QDosYjZnozx7SXMyVXanlmclRyIhcWW3OzJxQXciZU5vJ3YiojN6kWZ4NTUiojo6N3Ii42ByZTZyJiOppzc7Ejs4OjIuOitzOjMkdUJDRnIw82YSpTOkI3kiAjciMjVyM3MiUDa05mOSNmI6cG5xRnOnaTF7InZ5O3I6tjI6YjOzx2cqOTYwRTBAMU==" />            <input type="hidden" name="fuseaction" value="do.dologin" />
        </form>
    </li>
Интересно, что IE в html не пишет таблицы стилей каким бы то ни было образом, и выдает просто:
Код:
<form class="dropdown" name="loginformtop" method="post" action="https://сайт.com/" onsubmit="DLGAtE('Form Tracking', 'Logon', 'Header top right');">
Однако, в свернутом виде оно выглядит так:
Код:
<form class="dropdown" name="loginformtop" method="post" action="https://сайт.com/" onsubmit="DLGAtE('Form Tracking', 'Logon', 'Header top right');" style="display: none;">
А в развернутом так:
Код:
<form class="dropdown" name="loginformtop" method="post" action="https://сайт.com/" onsubmit="DLGAtE('Form Tracking', 'Logon', 'Header top right');" style="display: block;">

У меня это реализовано таким образом:
Код:
$sLogin = '123'
$sPass = '321'
$oLogin = _IEGetObjById($oIE, 'f_users_email')
$oPass = _IEGetObjById($oIE, 'f_users_password')

_IEFormElementSetValue($oLogin, $sLogin)
_IEFormElementSetValue($oPass, $sPass)

MouseMove (1066, 198, 1) ; развернуть форму логина
Sleep (500)
 _IEAction($oPass, "focus") ; тут опять таки я не смог нажать на кнопку "логин", потому что она странно как-то описана
Send ('{ENTER}')


Хотелось бы реализовать нормальным, человеческим образом. Помогите пожалуйста.


Добавлено:
Сообщение автоматически объединено:

На кнопку нажать придумал как, но форму так и не смог развернуть, а хотелось бы.. Для красивости и развития навыков :smile:

Сейчас так:
Код:
$sLogin = '123'
$sPass = '321'
$sForm = 'loginformtop'
$oLogin = _IEGetObjById($oIE, 'f_users_email')
$oPass = _IEGetObjByName($oIE, 'f_users_password')

 _IEFormElementSetValue($oLogin, $sLogin)
 _IEFormElementSetValue($oPass, $sPass)
		 
$oInput = _IETagNameGetCollection ($oIE, "input")
For $oInput In $oInput
   If $oInput.value == 'логин' Then
	IEAction($oInput, "click")
	 _IELoadWait($oIE)
	ExitLoop
   EndIf
Next



Добавлено:
Сообщение автоматически объединено:

Что-то никто не помогает..
Может быть я неправильно сформулировал..
Нужно в объекте <form> изменить параметр slyle.
Возможно ли это средствами Autoit без JS? Если нет, то как с JS? И в том и в другом я разбираюсь плохо.
 
Верх