Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 27.07.2017, 11:03
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

Вот она
function RunJava(resurs)
{
var fso = new ActiveXObject("Scripting.FileSystemObject")
var b = fso.FileExists(resurs)
if (b) { eval(fso.OpenTextFile(resurs, 1, 0).ReadAll()) }
}

Eval - Функция eval разрешает динамическое выполнение исходного кода JavaScript. Код, переданный в функцию eval, выполняется в том же контексте, в котором вызывается функция eval.
OpenTextFile - Открывает указанный файл и возвращает объект TextStream, который можно использовать для чтения из файла или добавления данных в файл.
формат: object.OpenTextFile(filename[, iomode[, create[, format]]])
iomode: Необязательный. Указывает режим ввода-вывода. Может иметь значение одной из двух констант: ForReading=1(моё!) или ForAppending=8.
create: Необязательный. Значение типа Boolean, которое указывает, можно ли создать новый файл, если файл не существует. True позволяет создать файл, а False - нет(моё!).
ReadAll - Выполняет чтение всего файла TextStream и возвращает результирующую строку.

Т.е. прочитать файл содержащий java код и выполнить его!

В загружаемом и соответственно далее исполняемом файле находится несколько вызовов процедуры
stroka ([["66","#"],["+","А1"],["+","Б1"],["-","В8"],["-","Г4"],["+","Д5"]]).
Сама процедура ничего заумного не делает, просто на основании данных массива формирует HTML код для нарисования таблицы.
Очищаем переменную os='', и вызываем RunJava, выполнение его приводит к запуску процедуры STROKA(colon) из файла js,
а т.к. EVAL имеет доступ ко всем переменным, то результат выполнения STROKA будет находиться в нашей переменной os, которую мы потом через innerHTML отобразим.
Вот собственно и всё. Ничего о блокировках я в описаниях по командам не нашёл.
Ответить с цитированием
  #22 (permalink)  
Старый 27.07.2017, 11:15
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

Собственно, убрал RunJAVA и воткнул несколько строк STROKA(colon).... блокировать браузер нечем! Файл не загружается, eval не выполняется..... LOADING так и не появился.... значит не RUNJAVe причина
Ответить с цитированием
  #23 (permalink)  
Старый 27.07.2017, 11:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

DjFuntik,
танцы с бубнами ... перед RunJAVA
добавьте
document.documentElement.clientWidth;
Ответить с цитированием
  #24 (permalink)  
Старый 27.07.2017, 12:11
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

нет, если вы намекаете, то что LOADING попадает "куда-то" вне видимой области, то нет - если из
<DIV id='waitDiv' style='z-index:1; left: 47%; visibility: visible;
удалить "visibility: visible;", то LOADING отображается в центре экрана, а значит местоположение правильное
Ответить с цитированием
  #25 (permalink)  
Старый 27.07.2017, 12:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

DjFuntik,
картинка не показывается в 3 случаях -- не загружена (браузер не хочет грузить невидимое,может помочь прелоад), не нарисована(пост 23, после изменения ксс дать странице перерисоваться), комп занят загрузкой с сервера(???). всё, более причин не знаю и помочь не могу.
Ответить с цитированием
  #26 (permalink)  
Старый 27.07.2017, 12:55
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

Ну вот смотрите пост 19 закомментироуйте строки 23 и 27, в строке 37 удалите "visibility: visible;" и запустите. LOADING будет отображаться поверх основного содержимого ибо "z-index:1". Т.е. всё нормально загружено и в нужном месте отображается. На счёт загрузки с сервера (хм), ну так я ж убрал RunJAVA, и соответственно нечего грузить с сервера
Ответить с цитированием
  #27 (permalink)  
Старый 27.07.2017, 13:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

DjFuntik,
испорченный телефон, если без RunJAVA картинка есть, значит ваша загрузка блокирует показ и весь браузер, пока браузер не загрузит то что нужно, он ничего больше делать не будет, в том числе и показывать картинки.
Ответить с цитированием
  #28 (permalink)  
Старый 27.07.2017, 13:14
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

Ну к примеру, тут загрузки с сервера и строки 16 и 23 никак ни на что не влияют, если 23 строку закомментировать, то LOADING 16-ой строкой делается видимым,т.е. оно работает, а т.к. в конечном счёте его не видно, то значит и строка 23 работает.... но почему оно выполняется как-то не последовательно ума не приложу......
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=windows-1251">
<SCRIPT language=JavaScript>
var colon = new Array()
function stroka(colon)
{
 os += "<TABLE><TR>"
 for (var i = 1; i < colon.length; i++)
  os += "<TD><P>....<IMG src='" + colon[i][1]+ ((colon[i][0]=="+")?"":"-") + ".jpg'>...</TD>"
 os+="</TR></TABLE>"
}
  
function proc(js)
{
 document.all["waitDiv"].style.visibility = 'visible' // или document.getElementById('waitDiv').style.display='block'
 os = ""
 ts.innerHTML = os
 if (js==62) stroka ([["66","#"],["+","А1"],["+","Б1"],["-","В8"],["-","Г4"],["+","Д5"]])
 if (js==96) stroka ([["67","#"],["+","А2"],["-","Б3"],["+","В7"],["+","Г9"],["-","Д1"]])
 if (js==01) stroka ([["68","#"],["+","А3"],["+","Б5"],["-","В1"],["+","Г2"],["+","Д8"]])
 setTimeout('ts.innerHTML = os;', 5000);
 document.all["waitDiv"].style.visibility = 'hidden' // или document.getElementById('waitDiv').style.display='none'
}
</script>
</head>
 
<body>
 <img src='screens1.jpg' onclick=proc('62')>
 <img src='screens2.jpg' onclick=proc('96')>
 <img src='screens3.jpg' onclick=proc('01')>
 <DIV id='waitDiv' style='z-index:1; left: 47%; visibility: visible; position: absolute; top: 50%; text-align: center; background-color=yellow; border-style=groove'><FONT color=red><B><BIG>Идёт загрузка...</BIG></B><BR><IMG src='loading.gif'><BR>Пожалуйста, подождите.</FONT></DIV>
 <div id='ts'></div><script>proc('62')</script>
</body>

</html>

Последний раз редактировалось DjFuntik, 27.07.2017 в 13:18.
Ответить с цитированием
  #29 (permalink)  
Старый 27.07.2017, 13:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

DjFuntik,
больше мне добавить нечего.
Ответить с цитированием
  #30 (permalink)  
Старый 27.07.2017, 13:23
Интересующийся
Отправить личное сообщение для DjFuntik Посмотреть профиль Найти все сообщения от DjFuntik
 
Регистрация: 15.01.2013
Сообщений: 19

О! 23 строку вписал в 22 и эффект почти то что нужно... счас дальше посмотрю подойдёт ли мне в мою детищу

P.S> неа... только при первой загрузке срабатывает, при повторном вызове proc() уже ничего нет


PSS> Вообщем решил проблему так:
setTimeout('ts.innerHTML = os; initToolTips("img"); document.getElementById("waitDiv").style.display=" none"; document.getElementById("monets").style.display="b lock"', 100);
Может не совсем корректно, но зрительно очень похоже на правду

Последний раз редактировалось DjFuntik, 27.07.2017 в 13:41.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов свойств объектов из массива или объекта с параметрами Sanu0074 jQuery 4 22.05.2015 10:18
Как найти точки соприкосновения двух объектов в RaphaelJS Fatalityap Библиотеки/Тулкиты/Фреймворки 3 03.08.2012 16:33
Массив объектов или объект объектов vladlen Общие вопросы Javascript 19 30.10.2010 03:10
удаление объектов и тонкая работа с ними(помогите) digitalbrain Общие вопросы Javascript 4 28.07.2010 21:17
Быстрый поиск объектов Shasoft Общие вопросы Javascript 7 30.07.2009 05:28