2016-06-17 9 views
2

Ich versuche, ein Skript für Vorfilter ISOTOPE von einer anderen Seite zu verwenden, aber mein Isotope Skript lädt nicht meinen Wert mit dem Filterwert. Sie können hier selbst testen: http://aprime-industries.com/Mein Skript laden zu spät

Klicken Sie einfach auf "Nos Références" und klicken Sie auf ENTI für Beispiel.

enter image description here

Sie meine Drop-Down-Liste „ENTI“ ausgewählt sehen, aber die Filter nicht aktiv ist, muß ich auf „indifferent“ und klicken Sie erneut auf ENTI klicken, um die Filter und die Daten-filter- aktivieren Wert.

<option value="ENTI" data-filter-value=".ENTI">ENTI</option>

enter image description here

Ich werde Sie für Link mein Skript geben Sie den Wert aus der Dropdown-Liste:

function getParameterByName(name) { 
    name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
    results = regex.exec(location.search); 
    return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
} 

Und

$(document).ready(function(){ 
    var preSelected = getParameterByName("filter"); 

    if(preSelected == "ENTI") { 
     $('select[name="societe"]').val("ENTI"); 
    } 
    else if(preSelected == "S2MI") { 
     $('select[name="societe"]').val("S2MI"); 
    } 
    else if(preSelected == "JBM41") { 
     $('select[name="societe"]').val("JBM41"); 
    } 
}); 

Und meine href Link:

<a href="plaquettes?pre=ENTI" class="hvr-bounce-out"><img src="img/entilogo.png" class="" alt="icone ENTI"></a> 
<a href="plaquettes?pre=S2MI" class="hvr-bounce-out"><img src="img/s2milogo.png" class="" alt="icone S2MI"></a> 
<a href="plaquettes?pre=JBM41" class="hvr-bounce-out"><img src="img/jbm41logo.png" class="" alt="icone JBM41"></a> 

Ich mache einen jsfiddle für meinen Isotop Skript JSFIDDLE


Stoß! mein Schluss ist morgen :(

+1

ich bin nicht Sicher, das fragt Das Thema ist so wie es ist: es scheint auf einen Link zu der Seite mit dem Problem angewiesen zu sein, was bedeutet, dass die Frage den Fehler nicht darstellt, sobald Sie ihn behoben haben. Sie haben sich jedoch bemüht, anderen Code und Fiedeln in die Frage aufzunehmen, also werde ich nicht dafür stimmen, bei dieser Gelegenheit auf Eis zu legen. Wenn Sie den Link entfernen oder ihn zumindest am Ende der Frage platzieren können, wo seine Wichtigkeit reduziert ist, ist das das Beste - damit die Leser lange nach der Lösung des Problems daraus lernen können. – halfer

+0

Ich werde sicherstellen, dass die Frage noch verständlich sein wird, keine Sorge, danke für Feedback – Hightline

+0

Hattest du irgendeine Lösung für mich bitte helfen? – Hightline

Antwort

1

es zu spät wird geladen, weil es innerhalb $(document).ready(function(){} ist.
Fenster werden geladen und dann wird der Code innerhalb $(document).ready(function(){} ausgeführt werden.
So losen
$(document).ready(function(){}
und das Skript im Header halten laden sie vor Körperteil Lasten.
Aber es ist sehr zu halten empfohlen, die Skripte in der Fußzeile und innerhalb
$(document).ready(function(){}
, da es das Skript am Ende des Fensters Last geladen wird, und laden sie Ihre hTML-Elemente schneller.

+0

Also, hast du eine Lösung dafür, dass dies funktioniert, wenn ich es in der Fußzeile lasse? – Hightline