Ok, nach ein bisschen Forschung habe ich einen ziemlich intensiven Hack gemacht, um diese Arbeit zu machen. Pintrest bietet HTTPS-Inhalte an, nur aus irgendeinem Grund haben sie dies nicht in ihre API aufgenommen. Ich bin also durch die API gegangen und habe den Attributsetzer gefunden, der Attribute auf alle Elemente setzt, die die API erstellt.
Wie auch immer .. hier ist die Geige: https://jsfiddle.net/nanff007/1/ (stellen Sie sicher, https)
Und hier ist der Code, der die Magie führt ...
Dies ist eine Abhilfe ist/hacken oder was auch immer Sie möchte es nennen. Es wird nicht für immer funktionieren. Es kann auch nicht in allen Ländern funktionieren, da sich die Akamai-URLs ändern können. Die beste Option wäre, ein Anfrageticket bei Pintrest zu erstellen.
(function() {
$('a[data-pin-do]').each(function() {
$(this).attr('data-pin-dont', $(this).attr('data-pin-do'));
$(this).removeAttr('data-pin-do');
});
var timer = setInterval(function() {
for (prop in window) {
if (prop.search(/^PIN_/) > -1 && typeof window[prop] != 'boolean') {
clearInterval(timer);
window[prop].f.set = function (el, att, string) {
if(att == 'src' && el.tagName.toLowerCase() == 'img') {
string = string.replace(/(^http:\/\/)/i, "https://s-");
}
if (typeof el[att] === 'string') {
el[att] = string;
} else {
el.setAttribute(att, string);
}
};
$('a[data-pin-dont]').each(function() {
$(this).attr('data-pin-do', $(this).attr('data-pin-dont'));
$(this).removeAttr('data-pin-dont');
});
window[prop].f.init();
break;
}
}
}, 100);
}());
Ist Ihre Website 'http : // 'oder' https: // '? –
Die gesamte Website ist https: // – a1anm