2014-09-23 5 views
0

Я хочу заменить все http на https страницы с помощью jquery.Repalce Все http на https страницы

Я пытаюсь это:

jQuery('a').each(function() { 
    var href = jQuery(this).attr('href'); 
    if (href.indexOf('http:') > -1) { 
     href = href.replace('http:', 'https:'); 
     jQuery(this).attr('href', href); 
    } 
}); 

Я хочу заменить HTTP: на https: на странице загрузки Веди меня, как это сделать?

+1

Я не вижу никакой ошибки. Что вы имеете в виду, что не работаете? Ошибки консоли? – laaposto

+1

Вы поместили код в функцию '$ (document) .ready()'? – Jerodev

+0

Не заменяя http на https –

ответ

4

Вы можете установить свойство:

$("a[href]").each(function(){ 
    if(this.protocol === "http:") 
     this.protocol = "https:" 
}); 
+2

Имейте +1 для обучения меня чему-то новому. Благодаря :) – Archer

1

Использование jQuery's attr не даст вам полного URL-адреса, но что вводится как значение href, которое может быть только локальным путем. Попробуйте это вместо того, чтобы ...

jQuery('a').each(function() { 
    this.href = this.href.replace("http:", "https:"); 
}); 

Использование this.href поможет вам абсолютный URL вместо этого, поэтому он всегда будет начинаться с типом протокола.

Смежные вопросы