Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   За что отвечает этот код? (https://javascript.ru/forum/misc/80355-za-chto-otvechaet-ehtot-kod.html)

12345678 26.05.2020 19:20

За что отвечает этот код?
 
Есть решение, которое реализует на сайте возможность читающим оповестить о найденных ошибках в материалах на сайте.

Вот его страничка https://gourl.io/php-spelling-notifications.html

Решение существует в виде PHP (для любого сайта), так и для WordPress в виде плагина.

И там и там имеется JS файл, но он слегка отличается, а именно парой строк кода в самом начале:

В версии для PHP сайта:

var spl_scripts = document.getElementsByTagName('script'),
    spl_thisscript = spl_scripts[spl_scripts.length-1],
    spl_path = spl_thisscript.src.replace(/\/gourlspelling\.js$/, '/'),
    splloc = window.location,
    spl;
nN = navigator.appName, document.onkeypress = spl_get_text;

function spl_cr...


А в версии для WordPress вот так:

var splloc = window.location,
    spl;
nN = navigator.appName, document.onkeypress = spl_get_text;

function spl_cr...


За что отвечает это код? Почему там прям указывается имя js файла? Я так понимаю, из-за этого файл нельзя переименовать и, возможно, менять его расположение?
Просто в версии скрипта для сайта на WordPress этого нет, значит оно и не так важно? Раз нет "привязки" то и js файл можно размещать где угодно или даже объединять с другими JS файлами.

Очень бы хотелось прояснить этот момент.

laimas 27.05.2020 01:03

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

12345678 27.05.2020 17:32

laimas

Спасибо что ответили. Можно значит смело удалять и просто прописать путь за место переменной :-)

laimas 27.05.2020 18:00

Цитата:

Сообщение от 12345678
Можно значит смело удалять и просто прописать путь за место переменной

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

12345678 27.05.2020 21:46

laimas

Ну этот скрипт единственный и этой перменной указывается путь для открываемого iframe, чтобы отправить сообщение об ошибке.
И я хочу этот скрипт объединить с остальными, потому то и нужно было понять, что это за "привязка" такая.

laimas 28.05.2020 01:33

Ну если вам рациональнее так, делайте.


Часовой пояс GMT +3, время: 08:07.