Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   поиск ссылки в javascript (https://javascript.ru/forum/events/10693-poisk-ssylki-v-javascript.html)

baron 15.07.2010 20:03

поиск ссылки в javascript
 
в функции существует строка:
window.open("http://sait.ru/id111",'2222','resizable=1,toolbar=1,scrollbars=1').blur();


Как http://sait.ru/id111 занести в переменную, например, link, чтобы далее подставить ее в нужный скрипт, например:

<script language="JavaScript" src="http://sait.ru/id111"></script>
зная, что символы 111 всегда меняются при загрузке?

вот мой код, но чувствую тут полный бред:-?
var link = document.getElementsByTagName('a');
var parts = Array (
"sait.ru/id"
);

for (var j = 0; j <parts.length; j++) {
     for(var i = 0; i <link.length; i++) {
          if(link[i].href.indexOf(parts[j])!=-1)

  document.write('<\sсriрt language=\"JavaScript\" src='+link.href+'><\/sсriрt>');

x-yuri 15.07.2010 22:52

речь о GreaseMonkey или что ты делаешь?

baron 15.07.2010 22:56

нет, мне лишь нужно вытащить ссылку для переменной:)

x-yuri 15.07.2010 22:59

ну так?
var url = "http://sait.ru/id111";

function(){
    window.open(url,'2222','resizable=1,toolbar=1,scrollbars=1').blur();
}

....

document.write('<sсriрt language="text/javascript" src='+url+'><\/sсriрt>');

baron 15.07.2010 23:30

нет, http://sait.ru/id111 - в этой ссылке id может быть любым..в этом и проблема

float 16.07.2010 00:24

ну так определи сначала ID, а потом прибавь к остальной строке.

x-yuri 16.07.2010 00:31

ты можешь подробно рассказать, что это за функция и что ты делаешь?

baron 16.07.2010 01:16

id генерируется случайный при обращении к скрипту..

chippolino 16.07.2010 11:17

<html>
	<head>
		<script>
			window.onload=(function(){
				function rand(a,b){return Math.floor(Math.random()*(b-a+1))+a};
				a=(a=rand(0,1000))<10?'00'+a:a=(a<100)?'0'+a:a;
				document.getElementById('mess').innerHTML="http://sait.ru/id"+a;
			});
		</script>
	</head>
	<body>
		<div id="mess"></div>
	</body>
</html>

baron 16.07.2010 11:43

chippolino, работает, но id не мы генерируем, а внешний скрипт..
нужно только из этой строки как-то вытащить ссылку с id
window.open("http://sait.ru/id111",'2222','resizable=1,toolbar=1,scrollbars=1').blur();

chippolino 16.07.2010 12:05

url='http://sait.ru/<?php echo "id".$n=rand(0,1000);?>';
window.open(url,'2222','resizable=1,toolbar=1,scrollbars=1').blur();

baron 16.07.2010 14:50

Цитата:

Сообщение от chippolino (Сообщение 64048)
url='http://sait.ru/<?php echo "id".$n=rand(0,1000);?>';
window.open(url,'2222','resizable=1,toolbar=1,scrollbars=1').blur();

Думаю я неправильно объяснил:-?

ссылка с id генерируется другим скриптом, совсем на другом сервере..сами мы не можем его выдумывать. Нам дают ссылку с id - мы ее просто копируем, и подставляем в наш скрипт с тем id, который мы уже получили.:)

и строка window.open("http://sait.ru/id111",'2222','resizable=1,toolbar=1,scrollbars=1' ).blur(); находится в другом javascript, который подгружается на сайте.

chippolino 16.07.2010 14:59

Так в чем собственно проблема не могу понять?
url='http://sait.ru/'+'подставляем_в_наш_скрипт_id_который_мы_получили';

why.not? 16.07.2010 15:01

он распарсить строку кажется не может и из строки выдернуть айдишник

baron 16.07.2010 15:45

постараюсь подробно все объяснить:write:

1. на сайте грузятся два скрипта js:
<script language="JavaScript" src="http://url.ru/js1.php"></script>
<script language="JavaScript" src="http://мойсайт.ru/js2.php"></script>


2. js1.php находиться на другом сервере и выдает при загрузке скрипт, в котором есть нужная нам строка с ссылкой и id.

3.js2.php - наш скрипт на нашем сайте, который ищет нужную нам ссылку, в ранее загруженном скрипте js1.php с внешнего сервера

т.е. из js1.php нужно как-то найти нашу ссылку, с помощью js2.php:)

chippolino 16.07.2010 16:00

Регулярные выражения вам в помощь

chippolino 16.07.2010 17:18

...Все эти манипуляции нужно делать не на javascript, а на php в файле
"http://твойсайт.ru/js2.php"

x-yuri 16.07.2010 18:05

Цитата:

Сообщение от x-yuri
ты можешь подробно рассказать, что это за функция и что ты делаешь?

Цитата:

Сообщение от baron
постараюсь подробно все объяснить

ты все-таки решился ответить ;)
Цитата:

Сообщение от chippolino
Все эти манипуляции нужно делать не на javascript, а на php



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