Translate

Поиск по этому блогу

воскресенье, 11 февраля 2018 г.

Как сделать копирование поля в браузер и очистка поля ввода.

Думаю, что каждый сталкивался с вопросом - как на сайте сделать копирование части текста, текстовых полей или полей ввода-вывода -различных инпутов. Коль скоро есть определенные поля, из которых мы хотим сохранять содержимое в браузер, то возникает закономерное желание и очищать эти поля нажатием одной кнопки

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

Начнем с разметки html документа:

<body>
  <input id="in" type="text">
  <button type="button" onclick = "reset('in')" >Reset</button>
  <br /><br />
  <input id="out" class="js-copyinput" type="text" >
  <button type="button" onclick="getLink();">Get Link</button>
  <button class="js-inputcopybtn" >Copy Link</button>
</body>


Ничего нового. Обычные текстовые поля input с кнопками button и специфичными идентификаторами id, для привязки к нашему JS - коду.

Добавляем JS - код для копирования



<script>
 var copyTextareaBtn = document.querySelector('.js-inputcopybtn');

 copyTextareaBtn.addEventListener('click', function(event) {
  var copyTextarea = document.querySelector('.js-copyinput');
  copyTextarea.select();

  try {
   var successful = document.execCommand('copy');
   var msg = successful ? 'successful' : 'unsuccessful';
   alert('Copying text command was ' + msg);
  } catch (err) {
   alert('Oops, unable to copy');
  }
 });
</script>


Здесь, я думаю, что все понятно в коде и без пояснений. Берем поле с классом .js-copyinput и копируем его содержимое в браузер. Часть кода - try - catch добавлена для отображения процесса копирования пользователю. Я вывел уведомления в виде alert. Вы можете сделать это иначе или не показывать их вовсе. Но я думаю, что уведомления для пользователя нужны. Иначе не создается уверенности, что копирование информации в браузер прошло успешно.

JS - код для очистки полей.


Для того, чтобы нам очистить любое поле, нам достаточно просто написать в JS - коде, что значение этого поля равно пустой строке.
Например: document.getElementById('out').value = ""; Здесь мы говорим браузеру, что поле со значением out должно быть пустым.

<script>
function reset() { 
if (document.getElementById('in').value != "" || document.getElementById('out').value != "" )  {
document.getElementById('in').value = "";
document.getElementById('out').value = "";
}else {return false}; 
};
</script>
Посмотреть готовый пример можно на сайте Codepen

See the Pen Модератор Ссылки загрузкиГД с копированием и очисткой полей by YaroslavW (@YaroslavW) on CodePen.



Здесь, я не стал останавливаться на подключении функций. Думаю, что по этой теме информации сейчас предостаточно. Буду рад вашим отзывам и комментариям. В следующий раз я постараюсь остановиться на более интересных вещах.

                                                                                                                                                             

Как сделать ссылку для загрузки файлов с Гугл Диска.

Решил описать самый простой способ создания ссылки на загрузку файлов, папок, документов с Гугл-Диска сразу на компьютер пользователя.

Все началось с того, что я написал несколько полезных расширений для браузера Google Chrome и решил ими поделиться с друзьями, но не тут то было! Просто так сделать ссылку для скачивания со своего диска Google Drive не получилось. Дело в том, что Гугл Диск предоставляет по ссылке только просмотр файлов, мне же хотелось, чтобы при нажатии на ссылку "Скачать" - происходила загрузка файлов, а на ссылку "Просмотр" - можно было посмотреть файлы на диске до загрузки.

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

Добавление атрибута download непосредственно к ссылке не принесло ожидаемого результата. Файлы загружались, но не в zip-архиве, или в существующем формате, а только как некое подобие html-документа.

Вот пример - создал папку на Диске, прошел -> "Включить доступ по ссылке" -> "Получить ссылку".

Для пробы я использовал Codepen. Здесь вы можете посмотреть, что получилось.

See the Pen загрузка папки by YaroslavW (@YaroslavW) on CodePen.



Если коротко, то создал обычную ссылку в которую добавил атрибут download. Путь к файлу - href указал, тот, что получил с диска.

При попытке скачать, произошло то, о чем я говорил выше. Предлагается сохранить файл в формате .htm

См. фото ниже.



Помог поиск в Гугл. Оказывается. что все дело в ссылке. Предложенная ссылка была такая:
https://drive.google.com/open?id=103vuGWLfwofXNR4pdFm986lBhETCbjQL
А для ссылки загрузки требовалась вот такая:
https://drive.google.com/uc?export=download&confirm=no_antivirus&id=103vuGWLfwofXNR4pdFm986lBhETCbjQL

В принципе, на этом можно бы было и закончить этот пост. Потому что все что вам потребуется, это:
  1. Получить ссылку на вашу папку (или документ) на Google Drive
  2. Взять от нее (скопировать) идентификатор -id=///
  3. Подставить в ссылку для загрузки (выделено красным)
Мне простые пути очень нравятся, но что делать, если ссылок много, или человек ну очень хочет разбираться во всем этом, ну и просто захотелось облегчить кому-то труд?

Решил написать простой скрипт, который бы производил все автоматически. И пошло и поехало. Потому что захотелось, чтобы стояла кнопка - "Copy", при нажатии на которую сразу бы копировался код ссылки в браузер. Потом решил, что нужно поставить кнопку очистки поля ввода - Reset, которая бы облегчала задачу многократного ввода.

Все это я описал в посте.

Ниже предлагаю воспользоваться модификатором ссылок для загрузки файлов с диска.





Код для модификации ссылки я применял очень простой:

function getLink(){
  var custom = document.getElementById('in').value;
  var output = document.getElementById('out');
  
  var fl = custom.indexOf("id=");
  console.log(fl);
  var custPart = custom.substring(fl+3);
console.log(custPart);
  var answer = "https://drive.google.com/uc?export=download&confirm=no_antivirus&id=" + custPart;
  output.value = answer;
};


Понятное дело, что к этому коду требуется соответствующая html разметка.

Подробнее об этом в посте Как сделать копирование поля в браузер и очистка поля ввода.

Удачи вам, друзья и пользуйтесь "Простыми советами" для того, чтобы сделать свою жизнь немного проще, легче и приятнее!

                                                                                                                                                             

вторник, 6 февраля 2018 г.

Как скачать WEBP фото из Google+.

Наверное каждый из нас когда-нибудь сталкивался с вопросом - как скачать фото формата WEBP из Гугл+.

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

Поиск в гугле, нужных результатов не дал. На первых позициях онлайн конвертеры и программы для конвертации webp в jpg файлы.

Пожалуй, что это удобно, если этим пользоваться не часто, но я решил пойти другим путем и расскажу вам о самом простом способе скачать WEBP фото в jpg формате сразу на свой компьютер.

Для справки. Вот что нам говорит Википедия о данном WEBP формате.

WebP (произносится как англ. weppy[4]) — формат сжатия изображений с потерями и без потерь качества, предложенный компанией Google Inc. в 2010 году. Основан на алгоритме сжатия неподвижных изображений (ключевых кадров) из видеокодека VP8. Использует контейнер RIFF.

Для работы с данным форматом существуют открытые библиотека (libvpx) и конвертер (webpconv).



В общем - спасибо Гугл, ты, как всегда, меня порадовал своими обновлениями и улучшениями. :-)

На первых позициях поиска - онлайн конвертеры и программы для конвертацииwebp в jpg файлы.

Пожалуй, что это удобно, если этим пользоваться не часто, но я решил пойти другим путем и расскажу вам о самом простом способе скачать WEBP фото в jpg формате сразу на свой компьютер.

Не могу сейчас сказать точно, но на Mozila Firefox достаточно просто правой кнопкой мыши нажать на изображение и выбрать в меню пункт "Открыть изображение". После этого его можно скачать в приемлемом формате.

Самый простой способ


Для Google Chrome
  1. Выбираем в ленте нужное фото, нажимаем на него правой кнопкой мыши и выбираем в выпадающем меню -"Открыть изображение в новой вкладке".
  2. На фото ниже я это сделал и попробовал сохранить изображение. Не смотря на то, что в адресной строке браузера был указан путь к изображению и даже стояло расширение .jpg в конце строки, скачать его в формате jpg не удалось. См фото ниже.



  3. Нажимаем кнопку F12 (или открываем панель разработчика ->"Исследовать элемент" правой кнопкой мыши.
  4. В открывшейся панели выбираем "Консоль" и вставляем в нее вот этот код:


  5. function googlePlus(){
      var url = document.querySelector('img').src;
      var fL = url.indexOf("\/w");
    var lL = url.indexOf("w\/");
    var c = url.substring(lL+1);
      var a = url.substring(0,fL); 
      location.href  = a + c;
    }
    googlePlus();
    


    Важно!!!

    Если вы видите, что фото пытается сохраниться только как html страница ( расширение .html ), то код вот такой:


    function googlePlus(){
      var src = document.querySelector('img').src;
      var firstLetter = src.indexOf("=");
      var a = src.substring(0,firstLetter);  
      location.href  = a;
    }
    googlePlus();;
    


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



  6. Нажимаем Enter
  7. Код в консоле может исчезнуть введенный вами код или там может появиться предупреждение( например такое - Resource interpreted as Document but transferred with MIME type image/jpeg ), в этом нет ничего страшного, просто это потому, что в этом окне загрузится выбранное вами изображение, но уже не в WEBP, а в jpg формате
  8. Теперь просто кликаем по картинке правой кнопкой мышки и скачиваем ее в формате jpg



Если не получилось ни в одном из вариантов. то посмотрите внизу поста, под заголовком UPDATE.↓

Второй способ



Я не буду подробно на нем останавливаться. потому что вы и без меня его наверняка знаете.

  1. Выбираем изображение и правым кликом в выпадающем меню, выбираем "Копировать картинку"
  2. Открываем на компьютере любой удобный редактор изображений, мне для таких целей хватает и PowerPoint, можно GIMP или Photoshop
  3. Сочетанием клавиш Ctrl + V вставляем изображение из браузера в пустой документ.
  4. Обрезаем по формату и сохраняем, как обычное изображение, уже в любом доступном формате


Для ленивых!


Открываете фото в новой вкладке -> "Правая кнопка мыши" -> "Открыть фото в новой вкладке"

Вставить код и нажать Enter

function googlePlus(){
  var src = document.querySelector('img').src;
  var firstLetter = src.indexOf("/w530-");
  var a = src.substring(0,firstLetter);
  var b = src.substring(firstLetter + 15 );
  var url = a + b;
  var link = document.createElement( 'a');
  link.target = "_blank";
  link.download = "img.jpg";
  link.href = url;
  link.click ();
}
googlePlus();


Появится всплывающее окно загрузки, где вам предложат выбрать место сохранения и имя файла.


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

Как скачать видео с сайта Твиттер вы можете посмотреть в моем посте про blod-видео

Как скачать картинку (фото) из Twiiter

И Как скачать картинку из инстаграм

Как скачать видео с фейсбука

Как скачать видео с ютуба.




UPDATE
В последнее время Google часто меняет свои алгоритмы и если не получилось скачать фото предложенным способом, то можно попробовать ввести в консоль вот такой код:

function googlePlusOdd(){
 var src=document.querySelector('content .ZRciZe img').src;
 var lastL = src.length - 13;
 var a = src.substring(0, lastL );
 location.href = a;
};
googlePlusOdd();


По нечетным дням он срабатывает :-)
Друзья, мне очень важно знать, получается ли у вас все так как у меня и есть ли какие-либо предложения, замечания, пожелания? Есть ли потребность в написании расширения для браузера? Загрузчики фото или видео и для каких сетей вы бы хотели иметь?                                                                                                                                                              

понедельник, 5 февраля 2018 г.

Как разрешить изменять размер шрифта сайта посетителям.

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

Главное, что стоит учесть это то, что размеры шрифта на вашем сайте должны быть заданы в относительных величинах (em, % ).

Здесь все очень просто. Код понятен, но постараюсь дать комментарии в тексте.

Каждая ссылка нашего блока имеет уникальный id, например - id="size-12". При клике на нее возниакет событие onclick, которое мы отслеживаем - document.getElementById('size-12').onclick = size12;

И так как функция присвоена переменной var size12 = makeSizer(12);, то мы запускаем функцию, передавая в нее уникальную переменную. В данном случае - 12.

Сама функция makeSizer(size) очень проста. Она возвратит document.body.style.fontSize = size + 'px';, в нашем случае - document.body.style.fontSize = '12px';, тем самым изменив размер шрифта всего документа. И коль скоро, у нас размеры заданы в относительных величинах, то пропорционально изменятся и заголовки документа.

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <style>
 body {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
 }

 h1 {
  font-size: 1.5em;
 }

 h2 {
  font-size: 1.2em;
 }
</style>
</head>
<body>
 <div>
  <a href="#" id="size-12">12</a>
  <a href="#" id="size-14">14</a>
  <a href="#" id="size-16">16</a>
  <a href="#" id="size-18">18</a>
  <a href="#" id="size-20">20</a>
  <a href="#" id="size-22">22</a>
  <a href="#" id="size-24">24</a>
  <a href="#" id="size-26">26</a>
 </div>
 <div>
  <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eaque iure aliquid perferendis assumenda necessitatibus dolorem aperiam inventore, est, consectetur ex? Quia, omnis illo dignissimos quas iusto cumque, culpa laboriosam laudantium.</p>
  <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio maxime consequatur necessitatibus, impedit sint repellendus esse? Architecto facere quibusdam nobis repellendus est a corrupti explicabo nemo. Nostrum architecto ullam maxime.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus velit eligendi quisquam harum ut perspiciatis illum quae vero, modi magni esse non vitae, quibusdam laudantium, a repellat adipisci sed </p>
  
 </div>
 <script>
  window.onload=function (){
 (function (){
function makeSizer(size) {
  return function() {
    document.body.style.fontSize = size + 'px';
  };
};

var size12 = makeSizer(12);
var size14 = makeSizer(14);
var size16 = makeSizer(16);
var size18 = makeSizer(18);
var size20 = makeSizer(20);
var size22 = makeSizer(22);
var size24 = makeSizer(24);
var size26 = makeSizer(26);

document.getElementById('size-12').onclick = size12;
document.getElementById('size-14').onclick = size14;
document.getElementById('size-16').onclick = size16;
document.getElementById('size-18').onclick = size18;
document.getElementById('size-20').onclick = size20;
document.getElementById('size-22').onclick = size22;
document.getElementById('size-24').onclick = size24;
document.getElementById('size-26').onclick = size26;
 })();
};
 </script>
</body>
</html>



Вы можете посмотреть файл на моем Google Grive

Или можете посмотреть его в работе на сайте Codepen

See the Pen Изменение размера ШрифтаПользователемJS by YaroslavW (@YaroslavW) on CodePen.



Эту фишку можно использовать и для блога, совместив ее с другими возможностями для пользователя. Например - Изменить цвет фона и текста по желанию посетителя сайта.
Или
Как сделать заглавной каждую букву в слове (JS)
                                                                                                                                                             

воскресенье, 4 февраля 2018 г.

Изменить цвет фона и текста по желанию посетителя сайта.

Давно собирался написать простой код для изменения цвета текста и фона страницы по желанию пользователя.

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

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

Таким образом можно было выбрать цвет фона страницы и цвет текста.

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

То что у меня получилось, вы можете посмотреть на сайте Codepen.

See the Pen ColorTxt&BodyRadioButtons by YaroslavW (@YaroslavW) on CodePen.



Если коротко, то у нас есть какой то текст на странице, размещенный в параграфах <p>.

Мы создали два блока с радио-кнопками, которые будут менять цвет фона ( группа кнопок с id = "bgColor") и группа меняющая цвет текста (id="textColor"). Для того, чтобы получить значение value выбранного элемента я использовал jQuery.

В коде подключение jQuery выше скрипта, который в самом низу страницы.

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

Функция запускается при нажатии на кнопку и позволяет создавать самые разные комбинации цвета.

Весь код я поместил в один документ - index.html

<!DOCTYPE html>

<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>

</head>
<body>

 <h2>Change Back Ground Color</h2>
 <div id="bgColor">
  <label><input type="radio" name="radio" value="white">White</label>
  <label><input type="radio" name="radio" value="yellow">Yellow</label>
  <label><input type="radio" name="radio" value="red">Red</label>
  <label><input type="radio" name="radio" value="green">Green</label>
  <label><input type="radio" name="radio" value="lightgreen">Light Green</label>
  <label><input type="radio" name="radio" value="blue">Blue</label>
                <label><input type="radio" name="radio" value="gray">Gray</label>
                <label><input type="radio" name="radio" value="black">Black</label>
 </div>
 <hr>
 <h2>Change Text Color</h2>
 <div id="textColor">
  <label><input type="radio" name="txc" value="white">White</label>
  <label><input type="radio" name="txc" value="yellow">Yellow</label>
  <label><input type="radio" name="txc" value="red">Red</label>
  <label><input type="radio" name="txc" value="green">Green</label>
  <label><input type="radio" name="txc" value="lightgreen">Light Green</label>
  <label><input type="radio" name="txc" value="blue">Blue</label>
                <label><input type="radio" name="txc" value="gray">Gray</label>   
                <label><input type="radio" name="txc" value="black">Black</label>
 <br />
 <button type="button" onclick="changeColor()">Change Color </button>
 <h1>Header h1</h1>

 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia minima illum quam eveniet facilis ab aliquam. At enim sint, a nihil quidem sunt, atque, nesciunt voluptatibus laborum ipsum neque natus.</p>
 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia eveniet voluptas, dignissimos alias deserunt et assumenda aliquam quod fugit soluta facere consequuntur velit eligendi quis dolor dolore. Ipsum, iusto aspernatur.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum labore rem commodi, eaque adipisci voluptatum nemo totam architecto! Maxime error dolore repudiandae optio in reiciendis, pariatur sapiente, amet. Sint, sit.</p>
 <h2>Header2</h2>
 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia minima illum quam eveniet facilis ab aliquam. At enim sint, a nihil quidem sunt, atque, nesciunt voluptatibus laborum ipsum neque natus.</p>
 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia eveniet voluptas, dignissimos alias deserunt et assumenda aliquam quod fugit soluta facere consequuntur velit eligendi quis dolor dolore. Ipsum, iusto aspernatur.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum labore rem commodi, eaque adipisci voluptatum nemo totam architecto! Maxime error dolore repudiandae optio in reiciendis, pariatur sapiente, amet. Sint, sit.</p>
 
 <!-- jQuery -->
 <script src="https://code.jquery.com/jquery-3.2.1.js"
  integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="
  crossorigin="anonymous"></script>

  <script>
   function changeColor(){
    var bgColor = document.getElementsByName('radio');
    var txColor = document.getElementsByName('txc');
    for(var i = 0; i < bgColor.length; i++){
     if(bgColor[i].checked){
      var bgcolor = $('input[name=radio]:checked').val();
     }
    }
    for(var j = 0; j < txColor.length; j++){
     if(txColor[j].checked){
      var txcolor = $('input[name=txc]:checked').val();
     }
    }
    document.querySelector('body').style.backgroundColor = bgcolor;
    document.querySelector('body').style.color = txcolor;
   };
  </script>
</body>
</html>



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

    document.querySelector('Класс или имя селектора ФОН').style.backgroundColor = bgcolor;
    document.querySelector('Класс или имя селектора ТЕКСТ').style.color = txcolor;


Так вы сможете позволить пользователю изменять цвет текста и фона даже в своем блоге.

Маленькие хитрости.

Такое изменение цвета фона и текста будет действовать (сохраняться) до перезагрузки браузером страницы, или пока пользователь не закроет вкладку. При повторном открытии вашего сайта, ему придется все действия по индивидуальной настройке выполнить снова.

Мы можем решить эту проблему с помощью localStorage. Мы сможем позволить браузеру пользователя сохранить выбранные настройки для нашего сайта и применить их сразу же, как только пользователь вновь вернется на наш сайт.

Для этого в приведенный выше код, я добавил несколько строк для сохранения данных и проверки их при повторном посещении сайта.

Я выделили их в коде, просто для наглядности.

<!DOCTYPE html>

  <html lang="en">
  <head>
   <meta charset="UTF-8">
   <title>Document</title>

 </head>
 <body>

   <h2>Change Back Ground Color</h2>
   <div id="bgColor">
    <label><input type="radio" name="radio" value="white">White</label>
    <label><input type="radio" name="radio" value="yellow">Yellow</label>
    <label><input type="radio" name="radio" value="red">Red</label>
    <label><input type="radio" name="radio" value="green">Green</label>
    <label><input type="radio" name="radio" value="lightgreen">Light Green</label>
    <label><input type="radio" name="radio" value="blue">Blue</label>
    <label><input type="radio" name="radio" value="gray">Gray</label>
    <label><input type="radio" name="radio" value="black">Black</label>
  </div>
  <hr>
  <h2>Change Text Color</h2>
  <div id="textColor">
    <label><input type="radio" name="txc" value="white">White</label>
    <label><input type="radio" name="txc" value="yellow">Yellow</label>
    <label><input type="radio" name="txc" value="red">Red</label>
    <label><input type="radio" name="txc" value="green">Green</label>
    <label><input type="radio" name="txc" value="lightgreen">Light Green</label>
    <label><input type="radio" name="txc" value="blue">Blue</label>
    <label><input type="radio" name="txc" value="gray">Gray</label>   
    <label><input type="radio" name="txc" value="black">Black</label>
    <br />
    <button type="button" onclick="changeColor()">Change Color </button>
    <h1>Header h1</h1>

    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia minima illum quam eveniet facilis ab aliquam. At enim sint, a nihil quidem sunt, atque, nesciunt voluptatibus laborum ipsum neque natus.</p>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia eveniet voluptas, dignissimos alias deserunt et assumenda aliquam quod fugit soluta facere consequuntur velit eligendi quis dolor dolore. Ipsum, iusto aspernatur.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum labore rem commodi, eaque adipisci voluptatum nemo totam architecto! Maxime error dolore repudiandae optio in reiciendis, pariatur sapiente, amet. Sint, sit.</p>
    <h2>Header2</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia minima illum quam eveniet facilis ab aliquam. At enim sint, a nihil quidem sunt, atque, nesciunt voluptatibus laborum ipsum neque natus.</p>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia eveniet voluptas, dignissimos alias deserunt et assumenda aliquam quod fugit soluta facere consequuntur velit eligendi quis dolor dolore. Ipsum, iusto aspernatur.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum labore rem commodi, eaque adipisci voluptatum nemo totam architecto! Maxime error dolore repudiandae optio in reiciendis, pariatur sapiente, amet. Sint, sit.</p>
    
    <!-- jQuery -->
    <script src="https://code.jquery.com/jquery-3.2.1.js"
    integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="
    crossorigin="anonymous"></script>

    <script>
     
      if(localStorage.getItem('bgcolor') != null){
        var fon = localStorage.getItem('bgcolor');
        document.querySelector('body').style.backgroundColor = fon;
      }
      if(localStorage.getItem('txcolor') != null){
        var txt = localStorage.getItem('txcolor');
        document.querySelector('body').style.color = txt;
      }
      function changeColor(){
        var bgColor = document.getElementsByName('radio');
        var txColor = document.getElementsByName('txc');
        for(var i = 0; i < bgColor.length; i++){
         if(bgColor[i].checked){
          var bgcolor = $('input[name=radio]:checked').val();
        }
      }
      for(var j = 0; j < txColor.length; j++){
       if(txColor[j].checked){
        var txcolor = $('input[name=txc]:checked').val();
      }
    }
    document.querySelector('body').style.backgroundColor = bgcolor;
    localStorage.setItem('bgcolor',bgcolor);
    document.querySelector('body').style.color = txcolor;
    localStorage.setItem('txcolor',txcolor);
  };

</script>
</body>
</html>



Я, ради эксперимента, поставил на пробном сайте - traningforblog.blogspot.com. Здесь вы можете посмотреть пройдя по ссылке. Вы можете изменить цвет любых элементов, причем в любом количестве, если выберете их и добавите в код (как последние две строчки - примере). А чтобы добавить в блог в виде гаджета, то здесь все просто.

Для этого вам просто нужно перейти во вкладку - "Шаблоны" -> "Добавить гаджет" -> "Добавить HTML&JavaScript"

Код мало чем отличается от приведенного, поэтому дублировать его здесь не буду. Если у вас есть желание. то вы всегда можете его посмотреть, скопировать или скачать себе с моего Google Drive по этой ссылке
Как изменять размер шрифта сайта пользователем.
Как сделать заглавной каждую букву в слове (JS)                                                                                                                                                              

Как сделать заглавной каждую букву в слове (JS)

Наиболее частый вопрос с которым сталкиваются начинающие программисты, студенты и просто блогеры - как сделать заглавной первую букву в каждом слове текста с помощью java script.

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

Пишу два метода. Первый - чистый JavaScript (без jQuery) и второй метод с jQuery.

Очень часто бывают такие вопросы от блогеров, на собеседованиях и вообще, знать это полезно.

Без долгих вступлений.

Вариант 1 - на чистом JavaScript


<body>
 <div id="text">
  <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eaque iure aliquid perferendis assumenda necessitatibus dolorem aperiam inventore, est, consectetur ex? Quia, omnis illo dignissimos quas iusto cumque, culpa laboriosam laudantium.</p>
  <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio maxime consequatur necessitatibus, impedit sint repellendus esse? Architecto facere quibusdam nobis repellendus est a corrupti explicabo nemo. Nostrum architecto ullam maxime.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus velit eligendi quisquam harum ut perspiciatis illum quae vero, modi magni esse non vitae, quibusdam laudantium, a repellat adipisci sed dicta.</p>
  <button type="button" onclick=" UpperFirstLetter()">Click Me</button>
 </div>
 <script>
  function UpperFirstLetter(){
     var textArray = (document.getElementById('text').innerHTML).split(' ');
  
  var UpperText = [];
  for(var i = 0; i < textArray.length; i++){
   var word = textArray[i][0].toUpperCase() + textArray[i].slice(1);
   UpperText.push(word);
  }

    document.getElementById('text').innerHTML = UpperText.join(" ");
 }
 // UpperFirstLetter();
 </script>
</body>


В этом примере мы обращаемся к части текста, которая заключена в блок сid = "text". Вы можете изменить это по собственному усмотрению, изменив первую строку скрипта var textArray = (document.getElementById('text').innerHTML).split(' '); на другой "выборщик" - например на querySelector('здесь ваш класс или тэг').

Можете убрать кнопку. Сделать так, что функция будет запускаться сразу после загрузки документа и менять буквы.

Для этого вам стоит только добавитьUpperFirstLetter(); перед закрывающим тегом </script>(в коде выше - закомментировано // UpperFirstLetter();) и конечно же удалить кнопку button из html кода.

Без jQuery


Здесь код функции
    window.onload = function () {
Здесь "запуск"
Например UpperFirstLetter();
};

Или так:
window.onload=function (){
 (function (){
Здесь "Весь ваш код"
 })();
};

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

В случае с jQuery код нужно поместить внутрь функции:


$(document).ready(function() {
    Здесь ваш код с "запуском"
});


Посмотреть готовый пример можно codepen

See the Pen UpperEachLetWithoutJQ by YaroslavW (@YaroslavW) on CodePen.






Второй вариант с jQuery


В этом примере первая функция будет делать заглавной только первую букву, а вторая, первую букву в каждом слове

<body>
  <p>lorem ipsum dolor sit amet, consectetur adipisicing elit. odio maxime consequatur necessitatibus, impedit sint repellendus esse? architecto facere quibusdam nobis repellendus est a corrupti explicabo nemo. nostrum architecto ullam maxime.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus velit eligendi quisquam harum ut perspiciatis illum quae vero, modi magni esse non vitae, quibusdam laudantium, a repellat adipisci sed dicta.</p>
  <button type="button" class="first">First Word Upper</button>
   <button type="button" class="second">Each Word Upper</button>
   <!-- jQuery -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
   <script>
    // Выводит первую заглавную букву
$("button.first").on("click", function(){
  var firstLetter = $("p").text()[0].toUpperCase();
  $("p").html(firstLetter + $("p").text().slice(1));
});

// Выводит заглавную букву у каждого слова
$("button.second").on("click", function(){
   var names = $("p").text();
   var arr = names.split(' '); //получаем массив из строки.
   var result = []; // +
   $.each(arr, function(i){
     // добавляем заглавную букву каждому слову в массиве
     var text = arr[i][0].toUpperCase()+arr[i].slice(1);
     result.push(text); // +
   });
  $("p").html(result.join(" "));  // +
});
   </script>
</body> 



Внутри кода даны исчерпывающие комментарии. Вы так же можете изменить и этот вариант кода, как и первый, только не забывайте о том, что теперь вы можете сделать выборку с помощью jQuery. Например - $("button.second") - обращение к кнопке button с классом - second.

Скрипт можно разместить в отдельном файле, но подключить его в документе нужно ниже подключения jQuery.

Посмотреть готовый пример можно codepen

See the Pen UpperLettWord by YaroslavW (@YaroslavW) on CodePen.

Как изменять размер шрифта сайта пользователем.
Изменить цвет фона и текста по желанию посетителя сайта.                                                                                                                                                              


Хотите освоить самые современные методы написания React приложений? Надоели простые проекты? Нужны курсы, книги, руководства, индивидуальные занятия по React и не только? Хотите стать разработчиком полного цикла, освоить стек MERN, или вы только начинаете свой путь в программировании, и не знаете с чего начать, то пишите через форму связи, подписывайтесь на мой канал в Телеге, вступайте в группу на Facebook.Пишите мне - kolesnikovy70 почта gmail.com