Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Копировать данные в буфер обмена
 
 автор: nir   (04.02.2008 в 16:58)   письмо автору
 
 

Задача вроде и не сложная но так как опыт работы с js не велик, решени естановится проблематичным:
Есть Файл 1.txt , нужно с помощью JS скопировать текст который находится в файле в буфер обмена. Как это можно реализовать ?

   
 
 автор: CNTv2.0   (04.02.2008 в 17:09)   письмо автору
 
   для: nir   (04.02.2008 в 16:58)
 

Реализовать это - элементарно.
Для начала надо ткнуть мышкой в ссылку "Поиск по форуму", затем вписать запрос "копировать в буфер", изменить параметры поиска на "искать в сообщениях" и ткнуть мышкой на кнопку "Поиск".

И придет к вам Щастье.

   
 
 автор: nir   (04.02.2008 в 17:38)   письмо автору
 
   для: CNTv2.0   (04.02.2008 в 17:09)
 

Спасибо большое за совет, но эту процедуру я выполняю всегда прежде чем обращаться за помощью, и к сожаленью в этот Щастья не было ( ,

я пробовал следующим образом ,

function FileToArray2()
{
var s, ForReading=1;
var Fnm=FSO.OpenTextFile ("C:\\js\\1.txt",ForReading,true);  \\ открываю  файл
MsgArr= new Array();
while (!Fnm.AtEndOfStream)   \\ читаю его по строчно 
{
s=Fnm.Readline();
MsgArr[MsgArr.length]=s;  \\ записываю в массив
}
Fnm.Close();
return MsgArr;


а вот дальше надо с массива в буфер как это сделать ?

P.S. Повторюсь, опыт работы с js почти не имею, поэтому очень прошу по подробней.

   
 
 автор: CNTv2.0   (04.02.2008 в 20:06)   письмо автору
 
   для: nir   (04.02.2008 в 17:38)
 

Интересно - а как вы себе представляете хранение массива в буфере?
Я вот, как ни тщусь, представить себе этого не могу.
Ибо в буфере может храниться лишь информация, кою можно куда-то "вставить".
Например, хранящийся в буфере текст можно "вставить" в текстовой редактор.
А хранящееся в буфере изображение можно "вставить" в графический редактор...

Куда вы хотите "вставить" массив и как он после "вставления" будет выглядеть?

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

С помощью javascript'a вы можете поместить в буфер исключительно текстовую строку.

Поэтому, как вариант решения, вам, во-первых, надо будет иметь на странице <input type="hidden">. Во-вторых, полученный вами массив необходимо будет преобразовать в строку (используя какой-то разделитель) и поместить полученную строку в этот <input>. Ну а уж потом с помощью методов createTextRange () и execCommand ('Copy') поместить эту строку в буфер.
Работать таковое будет только в MSIE (что, судя по коду, вам и надо).
Всё это вы могли бы прочитать, воспользовавшись моим советом по использованию поиска.
Например, здесь - http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=36721

Для вашего кода (если на странице будет иметься <input type="hidden"> с id="abcd" и если в качестве разделителя выбрать символ #) надо прописать так:
document.all.abcd.value = MsgArr.join ('#');
document.all.abcd.createTextRange ().execCommand ('Copy');

В результате будете в буфере иметь строку (для массива из 100 элементов): элемент0#элемент1#элемент2#...#элемент99

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования