Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2009, 22:13   #1
Maks1978
Пользователь
 
Аватар для Maks1978
 
Регистрация: 25.05.2008
Сообщений: 53
По умолчанию Загрузка файлов формата PDF или DJVU

Делаю справочный файл в Help & Manual. На некоторых страницах делаю кнопки с помощью опции "Вставить объект кода HTML". Помогите, пожалуйста, каким образом можно сделать так, чтобы при нажатии этих кнопок открывались для просмотра файлы формата PDF или DJVU (в отдельном окне)? Можно ли это сделать с помощью JavaScript, VBScript или каким-либо другим образом?
Maks1978 вне форума Ответить с цитированием
Старый 02.02.2009, 22:35   #2
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

обычно хватает простых ссылок на них - браузер сам определяет чем их открыть
свободен...
wall66 вне форума Ответить с цитированием
Старый 02.02.2009, 23:06   #3
Maks1978
Пользователь
 
Аватар для Maks1978
 
Регистрация: 25.05.2008
Сообщений: 53
По умолчанию

Пробовал - не получается, просто щелкает и никакой реакции, может есть какая-то особая ссылка?
Maks1978 вне форума Ответить с цитированием
Старый 03.02.2009, 01:46   #4
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Чтобы просматривать PDF и DJVU файлы, у пользователя-клиента должна быть установлена специальная программа, интегрированная с браузером, чтобы открывать такие файлы (Acrobat Reader для PDF файлов, например).

Чтобы проверить, установлен ли у пользователя плагин в браузере для просмотра тех или иных файлов - нужно расширенное знание JavaScript.

Для примера, вот так обнаруживается установлен ли у пользователя просмотрщик PDF файлов (скрипт взят в интернете, я его немного модифицировал, для более новых версий Adobe Acrobat):
Код:
<script type='text/javascript'>
/*******************************************************
ADOBE ACROBAT DETECT (INTERNET EXPLORER)
*******************************************************/

//Script type required to validate
var displayString;


var acrobat=new Object();

acrobat.installed=false;
acrobat.version='0.0';

if (navigator.plugins && navigator.plugins.length) {
for (x=0; x<navigator.plugins.length;x++) {
if (navigator.plugins[x].description.indexOf('Adobe Acrobat')!= -1)
{
acrobat.version=parseFloat(navigator.plugins[x].description.split('Version ')[1]);

if (acrobat.version.toString().length == 1) acrobat.version+='.0';

acrobat.installed=true;
displayString = 'Acrobat Version: '+acrobat.version;
break;
}
if (navigator.plugins[x].description.indexOf('Adobe PDF')!= -1)
{
acrobat.installed=true;
displayString = 'Acrobat Version: 7.0 or above';
break;
}
}
}

else if (window.ActiveXObject)
{
for (x=2; x<10; x++)
{
try
{
oAcro=eval("new ActiveXObject('PDF.PdfCtrl."+x+"');");
if (oAcro)
{
acrobat.installed=true;

acrobat.version=x+'.0';
displayString = 'Acrobat Version: '+acrobat.version;
}
}
catch(e) {}
}

try
{
oAcro4=new ActiveXObject('PDF.PdfCtrl.1');
if (oAcro4)
{
acrobat.installed=true;
acrobat.version='4.0';
displayString = 'Acrobat Version: '+acrobat.version;
}
}
catch(e) {}

try
{
oAcro7=new ActiveXObject('AcroPDF.PDF.1');
if (oAcro7)
{
acrobat.installed=true;
acrobat.version='7.0';
displayString = 'Acrobat Version: '+acrobat.version;
}
}
catch(e) {}

}

// Always do SOMETHING in case it goes wrong
if (! displayString) { displayString = 'Acrobat Installed: Information Not Available'; }

// this alert is just to test if document.write doesn't work
//alert(displayString);
</script>
</head>

<body>
<script type="text/javascript">
// Always do an if in case something goes wrong in populating displayString. Errors are ugly.
if (displayString) {
document.write("<b>",displayString," </b>");
}
</script>
</body>
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 03.02.2009, 12:25   #5
Maks1978
Пользователь
 
Аватар для Maks1978
 
Регистрация: 25.05.2008
Сообщений: 53
По умолчанию

Написал этот сценарий, появляется надпись:
Acrobat Installed: Information Not Available
Maks1978 вне форума Ответить с цитированием
Старый 03.02.2009, 20:51   #6
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Цитата:
Сообщение от Maks1978 Посмотреть сообщение
Пробовал - не получается, просто щелкает и никакой реакции, может есть какая-то особая ссылка?
даже скачка не начинается ?


максимум что вы можете сделать в данном вопросе - определить какие надстройки установлены в браузере, но для открытия их в программах это ничем не поможет - ссылки на файлы всеравно будут в прямом виде, тут уж браузер решает чем их открыть

если бы у js были такие возможности - этим бы пользовались создатели вредоносных программ для взлома компьютеров посетителей
свободен...
wall66 вне форума Ответить с цитированием
Старый 03.02.2009, 23:50   #7
Maks1978
Пользователь
 
Аватар для Maks1978
 
Регистрация: 25.05.2008
Сообщений: 53
По умолчанию

Цитата:
максимум что вы можете сделать в данном вопросе - определить какие надстройки установлены в браузере, но для открытия их в программах это ничем не поможет - ссылки на файлы всеравно будут в прямом виде, тут уж браузер решает чем их открыть

если бы у js были такие возможности - этим бы пользовались создатели вредоносных программ для взлома компьютеров посетителей
А разве компилируемый выходной CHM-файл считается браузером?
Я HTML-код использую, в данном случае, не для работы в Интернете, а для создания удобной для меня кнопки, при нажатии на которую отрывался бы PDF- или DJVU-файл в другом окне, как будто бы я щёлкнул по этому PDF- или DJVU-файлу мышкой два раза.
Maks1978 вне форума Ответить с цитированием
Старый 04.02.2009, 03:16   #8
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Делай как все нормальные люди делают. Перед использованием твоей программы/справочника, предложи скачать/установить Acrobat Reader и программку для DJVU. Благо они бесплатные. И всё. Не надо изобретать велосипед.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 04.02.2009, 07:40   #9
Maks1978
Пользователь
 
Аватар для Maks1978
 
Регистрация: 25.05.2008
Сообщений: 53
По умолчанию

Они у меня установлены:
DjVu Solo 3.1, DjVuReader 2.0.0.26, Foxit Reader 2.1.2023
Maks1978 вне форума Ответить с цитированием
Старый 04.02.2009, 10:06   #10
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

http://malsup.com/jquery/media/misc.html
SkyM@n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Печать pdf файлов из списка файлов в Excel АПС Microsoft Office Excel 5 15.04.2008 16:04
как перевести музон формата mp3 в waw или midi? geniy Свободное общение 7 02.09.2007 18:49
Множественная загрузка файлов Artem Общие вопросы Delphi 14 03.08.2007 20:38
Импорт doc и pdf файлов в базу omi БД в Delphi 3 30.06.2007 00:37