Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как заменить символы в коде? (https://javascript.ru/forum/misc/8556-kak-zamenit-simvoly-v-kode.html)

amYr 01.04.2010 19:28

Как заменить символы в коде?
 
Доброе время суток!
Подскажите пожалуйста как можно заменить символ в исходнике HTML страницы по средствам javascript. и что бы это делал браузер
Идет страница, среди нее есть код:
<script type="text/javascript">var key = "2lDnvG7PsU";var flashvars = {};flashvars.allowfullscreen = "true";flashvars.allowscriptaccess = "always";flashvars.image  = "http://bla-bla.by/video/p/640x480/2lDnvG7PsU/1.jpg";flashvars['duration'] = 600; flashvars.type = "video";flashvars.file        = "http://bla-bla.by/video/5a50/vc/2lDnvG7PsU/1.m4v?end=600"; flashvars['hd.state'] = 0; flashvars.bufferlength = "3";flashvars.skin = "http://bla-bla.by/player/stream/modieus.swf";var params = {};params.quality = "high";params.allowfullscreen = "true";params.allowscriptaccess = "always";params.wmode = "opaque";var attributes = {};attributes.id = "mplayer";attributes.name = "mplayer";swfobject.embedSWF("http://bla-bla.by/player/stream/player.swf", "container", "480", "391", "9.0.0", false, flashvars, params, attributes);</script>

Мне нужно заменить в этом коде этот параметр "flashvars['duration'] = 600" на "flashvars['duration'] = 0"
Подскажите как это сделать...
Заранее благодарен!

SkyLight 01.04.2010 20:00

А про replace мы знаем?

amYr 01.04.2010 22:27

неа....
ну а как сделать ? :) прост я новичок в этом...

SkyLight 01.04.2010 23:29

Я дал прямую ссылку на функцию, а точнее метод, который как раз и занимается заменой в строке. Читайте то, что там написано и пробуйте, а потом уже сюда.

amYr 01.04.2010 23:30

спасибо...

amYr 02.04.2010 00:29

str = "flashvars['duration'] = 600"
str.replace("600","0")

Правильно ? или нет ?
А как сделать что бы он через оперу работал ?
Пробовал в опере... не фурычит...

SkyLight 02.04.2010 00:53

Если строка будет небольшая и с единственным вхождением требуемого значения для поиска, то и такое пойдет. Если текст большой и сложный, то надо применять синтаксис регулярных выражений.
А про оперу - метод не может не работать, т.к. он не зависит от браузера. Хотя может не работать, потому что надо писать так:
str = str.replace("600","0");

amYr 02.04.2010 04:37

Ничего не получается...
Мне надо что бы среди всего кода скрипт нашел строку "flashvars['duration'] = 600" и заменил ее на "flashvars['duration'] = 0"

SkyLight 02.04.2010 11:57

Стоп, я что-то сразу не обратил внимание. Т.е. вам надо заменить значение не в тексте, а просто в скрипте на странице? Тогда можно просто дописать в нужном месте flashvars['duration'] = 0 и все.

amYr 02.04.2010 15:53

Да.. только надо так чтобы это заменил браузер когда открываешь страницу... Например вот страница: http://jatv.by/video/zHWO0tNdfZ
в исходном коде есть javascript тот который в первом посте...
Нужно что бы скрипт заменил "flashvars['duration'] = 600" на "flashvars['duration'] = 0" например в опере...

SkyLight 02.04.2010 16:23

Ну так в чем проблема дописать нужное значение? Или вы пытаетесь что-то изменить на чужом сайте?

amYr 03.04.2010 03:42

да :) мне нужно изменить на чужом сайте :)

SkyLight 03.04.2010 13:20

Тогда политика безопасности вам этого не позволит сделать.

amYr 03.04.2010 13:23

Почему? это же просто для меня...
ну есть же такие скрипты для оперы. Например к сайту ifolder

Aetae 03.04.2010 21:47

А почему бы тупо не написать flashvars['duration'] = 0; и всё? Ну или через сеттаймаут на пару мсек чтоб скрипт успел загрузиться.
Судя по скрипту энто самое flashvars находится в глобальной видимости.

А вообще, как я понял, нужно просто отрубить рекламу\заставку, а для этих целей есть более удобные инструменты.))

amYr 29.09.2010 13:24

Aetae,
Да ты правильно понял. Какие именно интсрументы? :)

Aetae 29.09.2010 14:07

В фф например Adblock Plus.


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