2009-07-20 2 views
0

Ich versuche meine index.html zu ändern, um ein modales Fenster anzuzeigen, wenn der Referer zu meiner Site == (z. B. wenn sie von Google kommen, ein "Willkommen Google-Dialogfeld mit einem Bild darin.AJAX modald dialog, fire onload wenn referer == <whatever>

Ich benutze FancyBox, aber ich bin nicht damit verheiratet.

Irgendwelche Vorschläge, wie man es kodiert? Ich bin ein C++ Programmierer - Javascript ist nicht meine Stärke, also würden gerade Beispiele sehr geschätzt werden.

Vielen Dank im Voraus.

+2

Das erscheint mir als ein "Argh! Halt die Klappe! Ich will keine Umfrage machen! Ich will keine Werbung sehen! Geh mir aus dem Weg und lass mich auf der Seite!" Barriere. Ich würde mich wirklich nicht stören. – Quentin

+0

Es ist nicht. Es ist ein "Download" -Fenster, mit dem ich nachvollziehen kann, wer das Produkt heruntergeladen hat und woher es kam. Ohne darüber zu streiten, warum ich stattdessen Cookies verwenden sollte (nehmen Sie einfach mein Wort dafür, dass dies der beste Weg ist), ist dies die bevorzugte Methode - und ich denke, dass dies von den Besuchern bevorzugt wird , auch. FWIW, Umgebung ist PHP/Apache. – Disco

+0

Warum brauchen Sie einen Modelldialog, um automatisch zu erkennen, woher sie kommen? – Quentin

Antwort

3

Sie werden ein paar Dinge benötigen: document.referrer und jQuery UI. jQuery UI macht Dialogfelder trivial einfach.

Sie können eine eingehende Beispiel aus dem documentation page aber zum größten Teil finden, ist es das, was Sie gehen zu müssen:

<script type="javascript/text"> 
    if (document.referrer.indexOf('google.com') > -1){ 
     $("#my-dialog").dialog("open"); 
    } 

    // this is the jquery code to set up the dialog box 
    $(function() { 
      // options would go inside the dialog() function 
    $("#dialog").dialog(); 
}); 

</script> 

benötigt HTML:

<div id="my-dialog"> 
This is where things get displayed 
</div> 
+0

Danke. Wie richte ich den "# my-dialog" im HTML ein? dh wo im HTML-Code markiere ich das "Fenster" (in diesem Fall ein Bild) mit "# my-dialog"? – Disco

+0

"mein-dialog" ist das ID-Tag des div, das den Dialog enthält – helloandre

+0

Scratch diese Frage ... Ich fand die Antwort auf der Dokumentationsseite, die Sie bereits verknüpft hatten. Vielen Dank! – Disco