Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Эмуляция нажатия кнопкой мыши (https://javascript.ru/forum/misc/29137-ehmulyaciya-nazhatiya-knopkojj-myshi.html)

eropov 16.06.2012 19:53

Эмуляция нажатия кнопкой мыши
 
Скажите, можно ли JS с эмулировать нажатие левой кнопки мыши на button формы сайта?

bes 16.06.2012 20:09

Просто вызывать её обработчик, как я понимаю
<button id="button" onclick="alert('yes')">click</button>
<script>
button.click()
</script>

eropov 16.06.2012 20:18

bes
Я пробовал так нажать на кнопку, но этот вариант не подходит т.к. JS на сайте запрещает это действие.
Нужно сделать вид, что это пользователь нажал мышью.

bes 16.06.2012 20:24

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

eropov 16.06.2012 20:27

Есть сайт(https://target.mail.ru/ads/create/).
На нем есть кнопка "загрузить". Нужно загрузить картинку.

Dim@ 16.06.2012 20:32

Maxmaxmахimus,
поместить координаты мыши на элемент и эмулировать событие mousedown?

eropov 16.06.2012 20:33

Maxmaxmахimus
Цитата:

координаты известны?
Привязка к координатам, не очень хороший вариант, лучше программно без координат)
Но если программно определить координаты, то вариант не плох.

Dim@ 16.06.2012 20:34

eropov,
ваша кнопка submit?

eropov 16.06.2012 20:40

Dim@
Цитата:

ваша кнопка submit?
<input type="file" name="image_file" style="position: absolute; right: 0px; margin: 0px; padding: 0px; font-size: 480px; font-family: sans-serif; cursor: pointer; ">

Сайт указывал выше)

Deff 16.06.2012 21:16

Цитата:

Сообщение от eropov
Я пробовал так нажать на кнопку, но этот вариант не подходит т.к. JS на сайте запрещает это действие.
Нужно сделать вид, что это пользователь нажал мышью.

Мну кажется Вы опять пытаетесь работать с фреймом на чужом ресурсе

Хотя из ИЕ может и побеждаемо

eropov 17.06.2012 07:23

Deff
Цитата:

Мну кажется Вы опять пытаетесь работать с фреймом на чужом ресурсе
Дело в том, что я должен работать на данном ресурсе, это мой хлеб. Надоело заполнять вручную, хочу автоматизировать процесс. Если бы вы взглянули на ресурс и поняли для чего он предназначен, что мое заполнение этой формы, дает владельцам ресурса хлеб. (Я не какой то там спамер и не каким боком не хочу навредить, ни сайту, ни владельцам)
Цитата:

Хотя из ИЕ может и побеждаемо
Помогите пожалуйста, решить эту задачу.

Serg_pnz 20.06.2012 13:35

type="file" разве возможно туда пропихнуть свой файл с локального ПК?

eropov 21.06.2012 04:48

Serg_pnz
Цитата:

type="file" разве возможно туда пропихнуть свой файл с локального ПК?
А для чего тогда на сайте имеется кнопка для загрузки картинки?

devote 21.06.2012 05:04

Цитата:

Сообщение от eropov
А для чего тогда на сайте имеется кнопка для загрузки картинки?

для того что бы пользователь самостоятельно указал путь к файлу.

Как сказал Serg_pnz, с эмулировать нажатие кнопки на кнопку типа file не возможно, и не пытайтесь мучатся. Браузеры вам никогда не дадут такой возможности.

eropov 21.06.2012 06:09

Как не дадут? Я могу нажать на кнопку как то так:
document.getElementsByTagName('input')[номер тега].click()

devote 21.06.2012 06:11

Цитата:

Сообщение от eropov
Я могу нажать на кнопку как то так:

ну жмите на здоровье, вот если бы еще от этого у юзера всплывало окно с предложением выбрать файл.. тогда конечно было бы здорово.
<input type="file" />
<script>
    document.getElementsByTagName('input')[0].click();
</script>

Serg_pnz 21.06.2012 08:32

Ага, прикольно было бы, если бы js сама подставляла путь к файлу. И отправляла.
Пришел на сайт, прочитал пяток анеков, ну или картинок веселых каких ;) а сайт твою папку виндовс и закачал к себе.

devote 21.06.2012 09:50

Цитата:

Сообщение от Serg_pnz
а сайт твою папку виндовс и закачал к себе.

ну папку виндовс то еще ладно, не жалко :) а вот что-то другое уже да не есть гуд)

Serg_pnz 21.06.2012 09:55

devote,
у меня там файл от тотала с хешеми паролей лежит :-?

devote 21.06.2012 09:59

Цитата:

Сообщение от Serg_pnz
у меня там файл от тотала с хешеми паролей лежит

ааа.. ну если тока.. я обычно в системных папках ничего личного не храню, и проги ставлю на другой диск.. вот там и пусть хранят что хотят. Зато с переустановкой системы нет проблем, снес и ничего не потеряно.

eropov 21.06.2012 10:34

Вы меня не совсем правильно поняли.
Я работаю с сайтом на другом ЯП, на нем у меня не получается правильно нажать кнопку, по этому я решил, что может это возможно на JS. Подставить путь я смогу на своем ЯП, но мне нужно нажать на кнопку так что бы картинка закачалась, а на данном уровне JS нажимает кнопку, другой ЯП перехватывает окно и вбивает путь , после нажимает на кнопку. Проблема состоит в том что видимо там стоит защита от такого рода действий и я думаю что это какой нибудь обработчик на JS.

Serg_pnz 21.06.2012 10:56

Простите, ЯП - это что?

devote 21.06.2012 10:57

Цитата:

Сообщение от Serg_pnz
ЯП - это что?

Язык Программирования

eropov 21.06.2012 11:27

devote
Вы совершенно правы. Интересно, почему программист не знает, что такое ЯП?:)

Serg_pnz 21.06.2012 11:38

eropov,
а я конструктор-технолог-электронщик, а веб-программирование - самостоятельно освоенная отрасль)
Я так думаю что ту форму можно на грейсманки автоматически заполнять, кроме, конечно, картинки.

nerv_ 21.06.2012 11:50

работает в IE
<html>
	<head>
		<meta charset="utf-8">
		<style>
		</style>
	</head>
	<body>
	
			<td>
				<div class="error error_image_url"></div>
				<div class=message_image_url></div>
				<input class=image_upload_${banner_form_id} type="file" value=" Загрузить ">
				<div class=descr>Изображения крупнее <b class=img-size-confines>60x75px</b><br>автоматически уменьшаются</div>
			</td>
		
		<script type="text/vbscript">
			Dim elem

			For Each elem In document.getElementsByTagName( "div" )
				If elem.className = "error error_image_url" Then
					elem.nextSibling.nextSibling.click()
					Exit For
				End If
			Next
		</script>

	</body>
</html>

eropov 21.06.2012 12:01

Serg_pnz
А я повар - сварщик - монтажник, а программирование под OC Windows - самостоятельно освоенная отрасль)

Serg_pnz 21.06.2012 12:04

eropov,
и еще знаешь что такое ЯП! да тебе цены нет! :victory:

POCCOMAXA 03.12.2013 01:00

попробуй это, 100% твой вариант и поможет
 
tampermonkey - Chrome
Greesemonkey - FF, Opera


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