Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   текст из html (http://www.flasher.ru/forum/showthread.php?t=138732)

humppa 14.04.2010 22:57

текст из html
 
Помогите разобраться. Имеется элементарный html:
<html>
<head>
<title>Какой-то текст</title>
</head>
<body>
Каким образом можно выдрать текст между тегами <title> и </title>?:wacko:

in4core 15.04.2010 02:52

externalEnterface . и то врядли поможет

mooncar 15.04.2010 03:56

Вопрос автору - вы хотите узнать заголовок той страницы, на которой опубликована флешка?

humppa 15.04.2010 15:51

В данном случае да, но вообще интересно каким образом получить текст между любыми тегами.

mooncar 15.04.2010 17:42

Опять-таки не очень понятно - если вы имеете доступ к странице, то вам проще сразу сообщать флешке нужные данные при ее публикации, например, на этапе генерации страницы.
Если предполагается, что вы можете что-то сделать только с помощью самой флешки, то тут можно задействовать связку класс ExternalEnterface + JavaScript.
"Общий случай" с ваших слов рисуется достаточно туманным, поэтому и советов вам особенно не дают. Пишите конкретно ваши обстоятельства, и что у вас не выходит.

humppa 15.04.2010 18:22

Я походу совсем чайник.
Флешка находиться в странице html. Это некий баннер которому должно передаватся значение <title> страницы, в которой он находится. Возможности что-то менять в html-коде нету.

mooncar 15.04.2010 18:35

Ну вот например, код, с помощью которого можно проверить URL страницы, где находится флешка:
Код AS1/AS2:

import flash.external.*;
var javaScriptFunction:String = 'function testUrl () { return location.href ; }';
var testUrlString:String = String (ExternalInterface.call (javaScriptFunction));

То есть в переменной testUrlString мы получаем URL.
Дальше можно как-то это использовать, например, запретить дальнейшую работу флешки, если текущий полученный URL не совпадает с заданным.
Или использовать в других целях - вам виднее.

Я JS знаю плохо, изучите вопрос, может быть есть функция, с помощью которой по аналогии можно и title узнать.
Или распарсить HTML код страницы.

humppa 15.04.2010 18:58

Код AS1/AS2:

import flash.external.*;
var javaScriptFunction:String = 'function testUrl () { return location.href ; }';
var testUrlString:String = String (ExternalInterface.call (javaScriptFunction));

То есть ExternalInterface.call вызывает JScript функцию testUrl() над исходной html страницей? Я правильно понимаю?

mooncar 15.04.2010 19:09

Да, именно так.
Функция JS генерируется прямо внутри флешки, доступ к редактированию HTML-страницы не обязателен. Главное, чтобы в коде публикации флешки было разрешено использование ею внешних скриптов (параметр "allowScriptAccess" хотя бы имел значение "sameDomain"). Если там будет "never", то вызов JS не станет работать.

humppa 15.04.2010 19:26

Спасибо большое!

Добавлено через 2 часа 24 минуты
Если интересно, чтобы выдергнуть <title> той же страницы делаем так:
Код AS1/AS2:

var javaScriptFunction:String = 'function testUrl () { document.title ; }';
var testUrlString:String = String (ExternalInterface.call (javaScriptFunction));



Часовой пояс GMT +4, время: 01:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.