Рейтинг:
26
Zoltán Zörgő
Вы не можете нажать на него? Это не имеет никакого смысла для меня. Вы хотите вызвать событие click на элементе из javascript? Попробовать это: http://www.nonobtrusive.com/2011/11/29/programatically-fire-crossbrowser-click-event-with-javascript/[^]
[Обновление]
Если вы хотите автоматизировать IE, вам лучше использовать этот подход: http://harness.codeplex.com/[^]
Если вы придерживаетесь WebBrowser control (currentwb), попробуйте этот подход:
HtmlElement link = currentwb.Document.GetElementByID("id_of_element")
link.InvokeMember("Click")
Или, если вы по какой-то причине не можете назначить id, вы можете использовать этот подход.
HtmlElementCollection links = currentwb.Document.GetElementsByTagName("A");
foreach (HtmlElement link in links)
{
if (link.InnerText.Equals("Link text"))
link.InvokeMember("Click");
}
Будьте внимательны, чтобы поместить в Оператор IF правильное условие для идентификации вашей ссылки.
Sergey Alexandrovich Kryukov
Я бы скорее согласился с тем, что "это не имеет смысла...". использование fireClick, на которое вы ссылаетесь, возможно, но обычно не требуется. Пожалуйста, смотрите мой ответ.
—СА
Zoltán Zörgő
Правда. Вообще-то он не нужен, и этот фрагмент кода тоже не требует его использования. Но кто знает, какова конечная цель операции... звучит как лошадь, пахнет как лошадь, выглядит как лошадь... но может быть зебра все же :)
Sergey Alexandrovich Kryukov
Это только потому, что зебра на самом деле лошадь (equus), а не "как лошадь" ... :-)
—СА
Ali Al-Masry
как я использую этот Java-код, когда я делаю это в C# ?
Zoltán Zörgő
1) Это был Javascript, а не Java
2) см. обновление. Обратите внимание, что GetElementById нуждается в идентификаторе для работы, ваш элемент не имеет идентификатора.
Ali Al-Masry
я знаю , что мой элемент не имеет идентификатора, и мне нужен способ щелкнуть по нему, есть какие-нибудь предложения ?
Zoltán Zörgő
Прочтите мои последние новости, пожалуйста. Здесь у вас есть все два варианта. Если первый из них не применим, вы все равно должны отличать его от всех других элементов. Но эта часть зависит от остального html - кода-и от того, как он изменяется между вызовами.
Zoltán Zörgő
Это только A
элемент с классами single_like_button
и btn3-wrap
занятия на странице? Или это первый, или третий, или 27-й A
элемент, или есть какая-то логика, как вы можете найти этот элемент в все ситуации? Это единственный, кто зовет? openWin_1083724();
функция, и она вызывает эту функцию во всех случаях? Для меня это выглядит как сгенерированное имя...
Ключ в том, что вы должны определить это A
стихия какая-то. Если вы не можете, то вы не можете решить эту проблему. Но никто другой не может вам этого сказать, вы должны это выяснить, так как у вас есть доступ к странице, которую вы хотите контролировать. Той части кода, которую вы дали, просто недостаточно. Пожалуйста, учтите, что логика идентификации должна быть действительна во всех ситуациях, для каждой загрузки страницы.
Ali Al-Masry
Итак, брат , я попытался получить больше информации о своей проблеме , и я обнаружил, что его веб-страница использует скрипт и он не находится в источнике страницы, я получил его с помощью элемента Fire Fox Inspect.., и мне все еще нужен способ нажать эту кнопку !!
Zoltán Zörgő
И вообще, какова ваша конечная цель? Щелчок программно может быть не единственным вариантом. Скорее всего, нет. Любое веб-приложение-это, в конце концов, последовательность http-запросов и ответов. Практически все задачи веб-автоматизации можно эмулировать таким образом. Это выглядит более сложным, но это скорее другой подход. Пожалуйста, помните, что мы не можем видеть ваш экран, читать ваши мысли - может случиться так, что вы не видите проблему в правильном направлении, или у вас нет надлежащих технических знаний для ее решения.
Ali Al-Masry
спасибо брату за попытку помочь мне теперь я использовал много способов, чтобы щелкнуть любой элемент с тегами, которые я добавил , и он работал нормально и щелкал многие элементы в качестве моего кода, но он все еще не нажимал тот, который я ищу ...
но после того, как я закрою все открытые новые вкладки веб-браузера, он откроет другое окно IE, но оно исчезнет через 1-2 минуты также перед его загрузкой содержимого страницы !!
Ali Al-Masry
а вот страница source :
<!Элемент DOCTYPE в HTML общественности "-//W3C для//определения DTD XHTML 1.0 переходный//ванной" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&ГТ;
<html xmlns="http://www.w3.org/1999/xhtml">
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
в <мета имя="ключевые слова" содержание="тест" /&ГТ;
<meta name="description" content="получайте лайки, подписчиков, подписчиков, просмотры и хиты . Простая регистрация, 50 баллов при старте и ежедневные 150 бонусных баллов для активных пользователей. Начните продвижение прямо сейчас и пригласите всех своих друзей присоединиться к примеру". />
<meta name="автор" content="тест" />
<meta http-equiv="imagetoolbar" content="no" />
<meta name="аудитория" content="все" />
<meta name="рейтинг" content="Общие сведения" />
<meta name="revisit-after" content="2 Day" />
<meta name="resource-type" content="document" />
<meta name="роботы" content="все" />
в <мета имя="гугл-переводчик-изготовление на заказ" содержание="3f4ffc751b6f619-aaa1185795a36d3e-gc243fde537c28ad5-11"&ГТ;&ЛТ;/мета&ГТ;
<link rel="ярлык" href="/favicon.ico" />
<link href="/styles/style2.css" rel="таблица стилей" type="text/css" />
<ссылка с href="/сценарии/jqueryui/УСБ/гладкость/jQuery-интерфейс.ПТК" отн="стилей" тип="текст/CSS в" /&ГТ;
<ссылка отн="стилей" тип="текст/CSS в" с href="/сценарии/MsgBox и в jQuery.с помощью MsgBox.Усс" /&ГТ;
<link rel="таблица стилей" type="text/css" href="/scripts/tiptip/tipTip.css" />
<сценарий тип="текст/яваскрипт" СРЦ="/scripts/jquery.min.js"&ГТ;&ЛТ;/скрипт>
<сценарий тип="текст/яваскрипт" СРЦ="/scripts/jqueryui/js/jquery-ui.min.js"&ГТ;&ЛТ;/скрипт>
<сценарий тип="текст/яваскрипт" СРЦ="/scripts/showLoading.js" &ГТ;&ЛТ;/скрипт>
<сценарий тип="текст/яваскрипт" СРЦ="/scripts/msgbox/jquery.msgbox.min.js"&ГТ;&ЛТ;/скрипт>
<сценарий тип="текст/яваскрипт" СРЦ="/scripts/simple_loading/simpleload.js"&ГТ;&ЛТ;/скрипт>
в <!-- &ЛТ;скрипт в src="/scripts/bxslider/jquery.easing.1.3.js" тип="текст/JavaScript"&ГТ;&ЛТ;/скрипт>
&ЛТ;скрипт в src="/scripts/bxslider/jquery.bxSlider.min.js" тип="текст/JavaScript"&ГТ;&ЛТ;/скрипт> --&ГТ;
&ЛТ;скрипт в src="/scripts/tiptip/jquery.tipTip.minified.js" тип="текст/JavaScript"&ГТ;&ЛТ;/скрипт>
&ЛТ;скрипт в src="/scripts/jquery.floating_popup.min.js" тип="текст/JavaScript"&ГТ;&ЛТ;/скрипт>
<link href="https://plus.google.com/104027597398828648329" rel="издатель" />
<script type="text/javascript" src="https://apis.google.com/js/plusone.js">
{parsetags: 'явный'}
</script>
<сценарий тип="текст/яваскрипт" СРЦ="/сценарии/готовые.в JS?1383653168"&ГТ;&ЛТ;/скрипт>
<сценарий тип="текст/яваскрипт" СРЦ="/сценарии/сценарий.в JS?1383653168"&ГТ;&ЛТ;/скрипт>
<название>Example.com - Facebook Likes</title>
</head>
<тело>
<script type="text/javascript">
(функция(){
ВАР збс = документ.метод createElement('скрипт');
збс.тип = 'текст/JavaScript';
збс.асинхронный = истина;
bsa.src = 'http://s3.buysellads.com/ac/bsa.js';
(документ.метод getelementsbytagname('голова')[0]||документ.метод getelementsbytagname('тело')[0]).метода appendChild(БСА);
})();
</script>
в <"&ГТ;&ЛТ див ИД="диалог-накладка;/дел&ГТ;
в <"&ГТ;&ЛТ див ИД="диалог-ИП;/дел&ГТ;
<div id="Div1">
</div>
<script type="text/javascript">
(функция (d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
если (ум.метода getElementById(идентификатор)) { возвращение; }
в JS = D.в метод createElement(з); основы JS.идентификатор = идентификатор;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
} (document, 'script', 'facebook-jssdk'));
jQuery(документ).готово(функция(){
});
</script>
<div class="обертка">
<div id="headerCont">
<div class="header">
<!--заголовок заголовок begin--&ГТ;&ЛТ;див ИД="диалог-оверлей"&ГТ;&ЛТ;/дел&ГТ;
<div id="диалоговое окно">
<div class="dialog-content">
&ЛТ;див ИД="диалог-сообщение"&ГТ;&ЛТ;/дел&ГТ;
</div>
</div>
<div class="header_block">
Zoltán Zörgő
Это общедоступная страница? Если да, то можете ли вы поделиться URL-адресом?
Ali Al-Masry
http://addmefast.com/free_points/facebook_likes.html
Zoltán Zörgő
Я постараюсь зарегистрироваться из дома. Это бесплатная услуга?
Ali Al-Masry
да , он свободен, и я все еще пытаюсь с ним справиться !!
Zoltán Zörgő
Для меня эта страница выглядит иначе. У меня нет ссылки, похожей на ту, которую вы разместили. Извините, но я больше ничем не могу вам помочь.
Рейтинг:
19
Sergey Alexandrovich Kryukov
"Щелчок" - это то, что вы делаете с помощью мыши или, по сути, с помощью клавиатуры. Если вы подумаете об этом, то поймете, что вам нужен не щелчок. Вы просто хотите иметь "тот же эффект, что и щелчок пользователя по элементу". В других работах вам просто нужно позвонить openWin_1083724()
из вашего JavaScript.
—СА
Ali Al-Masry
правильно , покажите мне, как с примером, пожалуйста .. я понятия не имею о том, как запустить или добавить java-скрипт в C# ???
Sergey Alexandrovich Kryukov
Пример? Конечно:
function clickBtn3() { openWin_1083724(); }
Только никогда не давайте вещам таких названий, с цифрами и т. д. Все имена должны быть семантическими.
Теперь какие "java-скрипты"?! Такого понятия не существует. Java - это не язык сценариев. Если Вы имеете в виду JavaScript, то это нечто совершенно не связанное с Java. "Запустить или добавить JavaScript в C#"?! Посмотрите, это показывает, что вы должны сначала узнать, как работает 1) веб, 2) что ASP.NET делает и как это работает, и так далее. Прямо сейчас у тебя нет ни малейшего понятия. Вам нужно сначала изучить его, и это не вопрос быстрого ответа.
Короче говоря, ASP.NET работает только на серверной части. Вы используете C# или другой язык для получения HTTP - запроса и генерации HTTP-ответа. Ответ может включать в себя все, что угодно (он определяется его тип содержимого), включая JavaScript. Браузер на стороне клиента получает HTTP-ответ и обрабатывает его, в частности, он может запускать JavaScript. И тогда вам нужно научиться, как заставить JavaScript работать. Итак, вам нужно выучить хотя бы немного JavaScript.
Вы уловили эту мысль?
—СА