Найти и кликнуть по ссылке.
Всем привет. В общем есть исходный код страницы:
... <a href="1.php">Ссылка 1</a><br/><a href="2.php">Ссылка 2</a><br/> ... Никак не могу написать юзерскрипт, который по названию(!), например "Ссылка 1" будет искать наличие такой ссылки на странице и если она есть, то делать по ней пеход. Заранее спасибо) |
Цитата:
<!DOCTYPE html>
<html ng-app>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
.on {
border: 1px solid red;
}
</style>
<script type='text/javascript'>
$(function(){
var val='Ссылка 1';
//$('a:contains("'+val+'")').get(0).click();
$('a:contains("'+val+'")').addClass('on');
});
</script>
</head>
<body>
<a href="1.php">Ссылка 1</a><br/>
<a href="2.php">Ссылка 2</a><br/>
</body>
</html>
|
Спасибо, но это jquery, как его подключить в скрипте, а не на странице? Плюс к тому клик не происходит, только выделение ссылки, если я правильно понял
|
<html> <head> </head> <body> <a href='http://ya.ru'>link1</a> <a href='http://www.google.ru'>link2</a> <a href='http://javascript.ru'>link3</a> <script> if(address=document.body.innerHTML.match(/(?=[^<]+link3)http:\/\/[^"']+/)) location=address[0] </script> </body> </html> |
Цитата:
Цитата:
|
ksa, крутой программист, спасибо, плюсик тебе в репу). Для решения задачи взял за основу именно твой код) freee , Тоже спасибо.
Но вот ещё есть несколько вопросов, буду рад, если кому не трудно будет написать ответ. 1. Как ко всему этому добавить if-else? Конкретнее. Есть страница, на ней 2 ссылки, на которые надо кликнуть. Этот скрипт кликнет на первую и всё.
<html>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<script type='text/javascript'>
$(function(){
var val='Ссылка 1';
var val2 = 'Ссылка 2';
//$('a:contains("'+val+'")').get(0).click();
$('a:contains("'+val+'")').css('border', '1px solid green');
//$('a:contains("'+val2+'")').get(0).click();
$('a:contains("'+val2+'")').css('border', '1px solid green');
});
</script>
</head>
<body>
<a href="1.php">Ссылка 1</a><br/>
<a href="2.php">Ссылка 2</a><br/>
<a href="3.php">Ссылка 3</a><br/>
</body>
</html>
В общем если есть ссылка 3, надо кликнуть на ссылку 1, а если её нет, кликнуть на вторую. 2. Есть код. <font color="red">текст</font> Как из этого кода вытянуть слово "red" и присвоить переменной? 3. Найти в html коде слово между скобками, не зная самого слова и присвоить переменной. 4. Можно ли тут использовать || (или) и если можно то как?
$( "div:contains('123')" ).append('lol');
То есть чтобы получилось что-то типа такое(не работает):
$( "div:contains('123' || '456')" ).append('lol');
То есть чтобы дописывало после 123 или 456 lol |
Вот ещё, забыл.
Как вот по названию ссылки не кликнуть по ней, а взять её url и присвоить переменной? |
Цитата:
<html>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<script type='text/javascript'>
$(function(){
var val='Ссылка 1';
var val2 = 'Ссылка 2';
if ($('a:contains("Ссылка 3")').length>0) {
//$('a:contains("'+val+'")').get(0).click();
$('a:contains("'+val+'")').css('border', '1px solid green');
} else {
//$('a:contains("'+val2+'")').get(0).click();
$('a:contains("'+val2+'")').css('border', '1px solid green');
};
});
</script>
</head>
<body>
<a href="1.php">Ссылка 1</a><br/>
<a href="2.php">Ссылка 2</a><br/>
<a href="3.php">Ссылка 3</a><br/>
</body>
</html>
|
Цитата:
Потом можно сделать так
<!DOCTYPE html>
<html ng-app>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
var clr=$('font').eq(0).attr('color');
alert(clr);
});
</script>
</head>
<body>
<font color="red">текст</font>
<font color="green">текст</font>
</body>
</html>
|
Цитата:
var str='Тут (мой) весь (html) код';
var a=str.match(/(\([\s\S]*?)(?=\))/g)
for (var i=0; i<a.length; i++) {
a[i]=a[i].split('(')[1];
};
alert(a);
|
| Часовой пояс GMT +3, время: 08:32. |