#javascript #html #jquery
#javascript #HTML #jquery
Вопрос:
У меня запущен скрипт, в котором, если есть определенный URL, то он добавит параметр. Например. Если в этой подпапке url есть /de , затем добавьте ?_sft_language=немецкий. Если /sp, добавьте ?_sft_language=испанский. Я написал приведенный ниже код на JavaScript, но он выполняется несколько раз, но я хочу, чтобы он запускался только один раз.
$(document).ready(function() {
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/de/partner/')){var url = document.location.href "?_sft_language=german";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/da/partner/')){var url = document.location.href "?_sft_language=danish";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/nl/partner/')){var url = document.location.href "?_sft_language=dutch";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/fr/partner/')){var url = document.location.href "?_sft_language=french";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/it/partner/')){var url = document.location.href "?_sft_language=italian";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/ja/partner/')){var url = document.location.href "?_sft_language=japanese";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/ko/partner/')){var url = document.location.href "?_sft_language=korean";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/no/partner/')){var url = document.location.href "?_sft_language=norwegian";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/es/partner/')){var url = document.location.href "?_sft_language=spanish";document.location = url;}
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testsite.com/partner/')){var url = document.location.href "?_sft_language=english";document.location = url;}
});
У кого-нибудь есть какие-либо идеи?
Спасибо!
Комментарии:
1. Этот код не будет выполняться несколько раз, если вы не запустите событие ready вручную. Обычно событие ready выполняется только после загрузки DOM.
Ответ №1:
вы можете проверить, добавили ли вы уже этот параметр:
if(!window.location.href.match('_sft_language') amp;amp; window.location.href.match('testingsite.com/de/partner')){
var url = document.location.href "?_sft_language=german";
document.location = url;
}
Комментарии:
1. Привет, так что в моем скрипте это будет что-то вроде этого: — if(!window . location.href.match(‘_sft_language’) amp;amp; window . location.href.match(‘testsite.com/de/partner ‘)){var url = document.location. href «?_sft_language=немецкий»;document.location = url;} если(!window. location.href.match(‘_sft_language’) amp;amp; window . location.href.match(‘testsite.com/da/partner ‘)){var url = document.location. href «?_sft_language=датский»;document.location = url;}
2. Привет @Malarres Я отредактировал свой ответ, чтобы показать, что я задумал. Но все еще не работает, так как ему необходимо перезаписать предыдущий параметр
3. если после вашего редактирования код все еще выполняется несколько раз, у меня нет идей: (Может быть, это связано с другой частью в кодовой базе?