X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> JavaScript функция alert выводит иероглифы. Как объединить две функции Java.
Teotim
Teotim
Topic Starter сообщение 10.4.2011, 20:50; Ответить: Teotim
Сообщение #1


Прописан скрипт:
<script language="JavaScript" src="1.js" type="text/javascript">


файл 1.js содержит:
document.ondragstart = test;
//запрет на перетаскивание
document.oncontextmenu = test;
//запрет на выведение контекстного меню
function test() {
alert ("Уважаемый пользователь, копирование ограничено. Ознакомьтесь пожалуйста с правилами копирования материалов в самом низу страницы.[i]Copying is limited[/i]")
return false
}
function no_copy()
{
alert ("Уважаемый пользователь, копирование ограничено. Ознакомьтесь пожалуйста с правилами копирования материалов в самом низу страницы.[i]Copying is limited[/i]")
return false
}
<!--
function atlpdp1() {for(wi=0;wi<document.all.length;wi++) {if(document.all[wi].style.visibility!='hidden') {document.all[wi].style.visibility='hidden';document.all[wi].id='atlpdpst'}}}function atlpdp2(){for (wi=0;wi<document.all.length;wi++) {if(document.all[wi].id=='atlpdpst')document.all[wi].style.visibility=''}} window.onbeforeprint=atlpdp1;window.onafterprint=atlpdp2;
//-->


Вопрос № 1
Когда выполняются функции function test() и function no_copy(), то в alert выводятся иероглифы вместо русских букв, а латынь Copying is limited выводится нормально.
Как это исправить?

Вопрос № 2
Как объединить функции function test() и function no_copy() в одну, т.е. не писать два раза alert ("Уважаемый пользователь, копирование ограничено. Ознакомьтесь пожалуйста с правилами копирования материалов в самом низу страницы.Copying is limited"), а написать подряд обе функции и один alert?

Вопрос № 3

Можно ли "Гугл Аналитик" и "Яндекс Метрику" запихнуть тоже в файл *.Js Будут ли они тогда нормально работать?
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

try{
var pageTracker = _gat._getTracker("UA-**********-**");
pageTracker._trackPageview();
} catch(err) {}
</script>

<!-- Yandex.Metrika counter -->
<div style="display:none;"><script type="text/javascript">
(function(w, c) {
(w[c] = w[c] || []).push(function() {
try {
w.yaCounter5004382 = new Ya.Metrika(******);
yaCounter5004382.clickmap(true);
yaCounter5004382.trackLinks(true);

} catch(e) { }
});
})(window, 'yandex_metrika_callbacks');
</script></div>
<script src="//mc.yandex.ru/metrika/watch.js" type="text/javascript" defer="defer"></script>
<noscript><img src="//mc.yandex.ru/watch/*****" style="position:absolute; left:-9999px;" alt="" /></noscript>
<!-- /Yandex.Metrika counter -->


Заранее огромное СПАСИБО!
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 10.4.2011, 21:59; Ответить: ZiTosS
Сообщение #2


Teotim, научитесь пожалуйста оформлять код по правилам. Иначе просто многие будут игнорировать ваши вопросы. Для оформления присутствуют специальные bb-теги.

Вопрос № 1
Когда выполняются функции function test() и function no_copy(), то в alert выводятся иероглифы вместо русских букв, а латынь Copying is limited выводится нормально.
Как это исправить?

По поводу иероглифов, соблюдайте одинаковую кодировку отображения страницы и кодировку файлов. У вас, скорее всего, файлы HTML в кодировке utf-8, а подключаемый вами js-файл в кодировке windows-1251(ANSI). Для перекодировки можно использовать обычный блокнот, выбирая при сохранении нужную кодировку. Не забываем, что сохранять нужно в кодировке UTF-8 без BOM. Можете воспользоваться другими редакторами, например таким, как Notepad++.

Вопрос № 2
Как объединить функции function test() и function no_copy() в одну, т.е. не писать два раза alert ("Уважаемый пользователь, копирование ограничено. Ознакомьтесь пожалуйста с правилами копирования материалов в самом низу страницы.Copying is limited"), а написать подряд обе функции и один alert?

Посмотрел по коду, функция no_copy() нигде не вызывается, поэтому её вообще можно удалить.

Вопрос № 3
Можно ли "Гугл Аналитик" и "Яндекс Метрику" запихнуть тоже в файл *.Js Будут ли они тогда нормально работать?

На этот вопрос затрудняюсь ответить... Если говорить о коде Google Analytics, то он полностью состоит из JS, поэтому его можно перенести в JS файл. Если смотреть на яндекс-метрику, то он состоит как из JS, так и HTML-тегов, поэтому выносить в файл можно только JS-код, которого тут и так мало. Смысл?


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Teotim
Teotim
Topic Starter сообщение 10.4.2011, 23:28; Ответить: Teotim
Сообщение #3


Прошу извинить за неправильное оформление.
Вопрос № 1 - Решён, спасибо!!!! Html в 1251 а *.Js сохранял в Utf 8. =)))

Вопрос № 2 - В body прописано:
<body>
<BODY ONCOPY="return no_copy()">

- функция ещё пригодится
Есть ли возможность объединить?
Вообще я занялся это фигнёй, что бы ускорить загрузку сайта, имеет ли смысл записывать скрипты в *.js?

Вопрос № 3

я заметил, что опера уж очень глючит когда открываю сайт, сохранённый на компе, а когда нет кода, то пашет намного быстрее.
Имеет ли смысл запихнуть Гугл и Яндекс в *.Js?

Вообще я думаю убрать Яндекс метрику, слабовата она по сравнению с Гугл.

С большим уважением, Денис.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 11.4.2011, 23:37; Ответить: ZiTosS
Сообщение #4


Teotim,
Вопрос № 2 - В body прописано:

Два тега body не должно быть. Почитайте спецификацию HTML.
Замените приведенное выше на:
<body oncopy="return test()">

И теперь можете удалять функцию no_copy()

Вообще я занялся это фигнёй, что бы ускорить загрузку сайта, имеет ли смысл записывать скрипты в *.js?

Наоборот, подгрузка на страницу js-файлов может тормозить загрузку документа. Подумайте, что вы загружаете один документ (одно обращение к серверу) с кодом в нем, и что вы загружаете 10 документов (10 обращений к серверу)

я заметил, что опера уж очень глючит когда открываю сайт, сохранённый на компе, а когда нет кода, то пашет намного быстрее.
Имеет ли смысл запихнуть Гугл и Яндекс в *.Js?

Нет смысла, просто комментируйте на локалке счетчики:
<!-- что комментируем -->

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

Вообще я думаю убрать Яндекс метрику, слабовата она по сравнению с Гугл.

Это вам решать, конечно у гугла возможностей по аналитике больше. Но если вы оптимизируете сайт под яшу, то и там иметь аналитику не плохо.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Teotim
Teotim
Topic Starter сообщение 12.4.2011, 14:50; Ответить: Teotim
Сообщение #5


Спасибо, тему можно закрыть.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Как вы отдыхаете от работы за компом
151 adw-kupon.ru 19812 Сегодня, 13:52
автор: Vmir
Открытая тема (нет новых ответов) Как вы бросили работу и перешли на заработок с сайтов?
20 uahomka 3444 Сегодня, 11:54
автор: Skyworker
Открытая тема (нет новых ответов) Как в пушсетках покупают по 100-200 тысяч кликов за день?
1 Boymaster 512 Сегодня, 11:45
автор: Skyworker
Горячая тема (нет новых ответов) Как вывести деньги в Украине с заблокированного Юмани ?
30 freeax 5008 20.4.2024, 16:49
автор: Liudmila
Открытая тема (нет новых ответов) Арбитражники, как ведете учет расходов и доходов?
13 Boymaster 2018 20.4.2024, 15:06
автор: Boymaster


 



RSS Текстовая версия Сейчас: 23.4.2024, 23:21
Дизайн