Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125

Открыть новую тему     Написать ответ в эту тему

Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262

Цитата:
чтобы после закачки сравнить общие md5

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

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 10:00 01-11-2018
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
md5 блочный хэш, так что его можно генерить кусками
https://github.com/satazor/js-spark-md5  

а ведь верно пока файл закачивается пусть на заднем фоне себе считает
 
 
Добавлено:

Цитата:
 последовательной генерации md5 хэша

понял и так же на сервере

Всего записей: 2240 | Зарегистр. 25-02-2013 | Отправлено: 10:11 01-11-2018
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как в браузере поле ввода (textarea) наполнить содержимым из файла, через диалог выбора? Не предлагать набившие оскомину решения типа "загрузка файла на сервер"
 
Спасибо

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3659 | Зарегистр. 08-02-2003 | Отправлено: 11:25 11-11-2018
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
https://jsfiddle.net/baivong/60py489j/
 
 
Добавлено:
div можно изменить на textarea
 
Добавлено:
или сделать Editable div
 
Добавлено:

Код:
<div onClick="this.contentEditable='true';">
    lorem ipsum dolor lorem ipsum dolorlorem ipsum dolor
</div>

Всего записей: 2240 | Зарегистр. 25-02-2013 | Отправлено: 14:04 11-11-2018
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262, спасибо
Сам нашел решения, расширяющие textarea --- CodeMirror, JQuery Lined TextArea plugin и CodePress, однако, в каждом из них свои глюки. Может, есть и другие эффективные решения? Хотелось бы получить textarea с нумерацией строк, с подсветкой кода еще лучше
 
Спасио

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3659 | Зарегистр. 08-02-2003 | Отправлено: 19:53 11-11-2018
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
нумерацией строк,  

не знаю
а вот

Цитата:
с подсветкой кода еще лучше

погуглите JavaScript Code heihgleter  

Всего записей: 2240 | Зарегистр. 25-02-2013 | Отправлено: 20:04 11-11-2018
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262
Цитата:
не знаю

Цитата:
CodeMirror, JQuery Lined TextArea plugin и CodePress
это умеют, но какие-то глюки с ними у меня(

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3659 | Зарегистр. 08-02-2003 | Отправлено: 20:14 11-11-2018
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
https://highlightjs.org/static/demo/
 
Добавлено:
https://prismjs.com/plugins/line-numbers/
 
Добавлено:
https://ourcodeworld.com/articles/read/140/top-5-best-code-syntax-highlighter-javascript-plugins
 
Добавлено:
https://enlighterjs.org/

Всего записей: 2240 | Зарегистр. 25-02-2013 | Отправлено: 20:16 11-11-2018
Retro222

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет.
Возможно ли, без сторонних плагинов создать новый ActiveXObject?
На Firefox.

Код:
 
new ActiveXObject("Scripting.FileSystemObject")
new ActiveXObject("WScript.Shell")
 

 
Чтобы нажал на кнопку, вызвалась функция, и создался  новый ActiveXObject.

Всего записей: 260 | Зарегистр. 21-09-2018 | Отправлено: 01:46 12-11-2018 | Исправлено: Retro222, 01:46 12-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Retro222

Цитата:
ActiveXObject?

нет. это только для старых IE. другие браузеры никогда ActiveX не поддерживали
https://ru.wikipedia.org/wiki/ActiveX
 
TeXpert
https://prismjs.com/
но если вам нужна подсветка в реальном времени по мере ввода, то это не оно.
вот это оно - https://ace.c9.io/

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 01:48 12-11-2018 | Исправлено: Mavrikii, 01:59 12-11-2018
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Цитата:
вот это оно - https://ace.c9.io/
Спасибо большое, действительно, кажется, крутая вещь!

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3659 | Зарегистр. 08-02-2003 | Отправлено: 20:07 12-11-2018
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Спасибо большое, действительно, кажется, крутая вещь!

я тоже смотрел, крутая

Всего записей: 2240 | Зарегистр. 25-02-2013 | Отправлено: 20:14 12-11-2018
Sanatory



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет!
Третьи сутки терзаю гугл запросами, но безрезультатно.
Ребята, объясните слоупоку, как сделать красиво и правильно.
 
Ситуация следующая. Возьмём страницу со следующей разметкой:
 

Код:
<body>
...
<div class="generic-page">  
<div class="artist">
Papa Roach
</div>
</div>
...
</body>

 
 
<div class="generic-page"> получается методом аякс-запроса. Я пишу UserScript и по ходу в разных функциях надо каждый раз получать textContent из обновляемого аяксами <div class="artist">.
 
Я написал простую функцию:

Код:
function getArtistName(){
  var artistName = document.querySelector('.generic-page > .artist');
  if(artistName){
    return artistName.textContent;
  } else {
    return false;  
  }
}

 
И если в нужных местах её вызывать, всё работает без проблем.  
Но!
 
Если сделать так:

Код:
var artistName = function (){
  var artistName = document.querySelector('.generic-page > .artist');
  if(artistName){
    return artistName.textContent;
  } else {
    return false;  
  }
}

и вместо вызова функции вставить переменную, всё работает до обновления контента: то есть, функция НЕ отрабатывается каждый раз, когда вызывается соответствующая переменная, только первый раз.
Что надо сделать, чтобы функция всякий раз возвращала переменной новые значения после обновления div аякс-запросом???
 
Понимаю, что сумбурно изложил, сори =(

Всего записей: 89 | Зарегистр. 21-04-2010 | Отправлено: 23:28 18-11-2018 | Исправлено: Sanatory, 23:30 18-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sanatory

Цитата:
и вместо вызова функции вставить переменную,

вставить что и куда?

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 23:36 18-11-2018
Sanatory



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
вставить что и куда?  

Mavrikii,  
у меня несколько функций в коде, в которых мне надо узнавать значение textContent из обновляемого аяксами <div class="artist">.  
Например,  

Код:
var searchDiv.innerHTML = '<div class="subhead"><span class="title__label">Поиск по '+artistName+' не дал результатов</span></div>';

или

Код:
var searchDiv.innerHTML = '<div class="subhead"><span class="title__label">Поиск по '+getArtistName()+' не дал результатов</span></div>';

 
В любом случае код сработает верно ПЕРВЫЙ раз. Если контент ообновится и значение внутри <div class="artist">  изменится, правильно будет работать только во втором случае (с функцией getArtistName()). В первом же варианте кода (с переменной artistName) ничего не изменится: artistName будет отдавать СТАРОЕ значение.
 
 
 
 

Всего записей: 89 | Зарегистр. 21-04-2010 | Отправлено: 23:49 18-11-2018 | Исправлено: Sanatory, 23:50 18-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sanatory

Цитата:
+artistName+

это все равно функция, хоть и записано как приравнивание переменной. вызывать как artistName()

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 23:52 18-11-2018
Sanatory



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
это все равно функция, хоть и записано как приравнивание переменной. вызывать как artistName()

 
Хм... Неаккуратненько как-то. И почему переменная не вызывает функцию каждый раз? Чёт я не понимаю.

Всего записей: 89 | Зарегистр. 21-04-2010 | Отправлено: 00:02 19-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sanatory

Цитата:
И почему переменная не вызывает функцию каждый раз?

почему она должна ее вызывать? при обращении к ней вы получаете то, чем она равна - функции. console.log(artistName) сделайте и поймете. ну или так - http://jsfiddle.net/jsyra0b4/

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 00:05 19-11-2018 | Исправлено: Mavrikii, 00:07 19-11-2018
Sanatory



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
почему она должна ее вызывать? при обращении к ней вы получаете то, чем она равна - функции. console.log(artistName) сделайте и поймете

Да я делал )))
 
Но вот это тоже не работает. Хотя должно.

Код:
var artistName = (function() {
    let currentName = document.querySelector('.generic-page > .artist');  
  if(currentName){
    return currentName;
  } else {
    return false;  
  }
}());

Почему?

Всего записей: 89 | Зарегистр. 21-04-2010 | Отправлено: 00:10 19-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sanatory

Цитата:
Почему?

потому что это, как раз, выполняется один раз и результат выполнения присваивается переменной.

Цитата:
}()

производит вызов функции сразу же. self-invoking function - https://blog.mgechev.com/2012/08/29/self-invoking-functions-in-javascript-or-immediately-invoked-function-expression/

Всего записей: 16423 | Зарегистр. 20-09-2014 | Отправлено: 00:11 19-11-2018 | Исправлено: Mavrikii, 00:12 19-11-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125

Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru