2012-02-17 1 views
1

J'ai trouvé ce script qui développe l'image lorsque la souris est terminée, mais lorsque vous cliquez sur l'image, ouvrez l'image dans une nouvelle page.Modifier jquery pour ne pas ouvrir l'image lorsque vous cliquez sur

Je voudrais modifier le script parce que je ne veux pas que cette image s'ouvre dans une nouvelle page lorsque vous cliquez.

Comment puis-je modifier le script pour ne pas ouvrir la photo dans une nouvelle page?

Voici le script:

this.imagePreview = function(){ 
    /* CONFIG */ 

     xOffset = 10; 
     yOffset = 30; 

     // these 2 variable determine popup's distance from the cursor 
     // you might want to adjust to get the right result 

    /* END CONFIG */ 
    $("a.preview").hover(function(e){ 
     this.t = this.title; 
     this.title = "";  
     var c = (this.t != "") ? "<br/>" + this.t : ""; 
     $("body").append("<p id='preview'><img src='"+ this.href +"' alt='Image preview' />"+ c +"</p>");         
     $("#preview") 
      .css("top",(e.pageY - xOffset) + "px") 
      .css("left",(e.pageX + yOffset) + "px") 
      .fadeIn("fast");       
    }, 
    function(){ 
     this.title = this.t;  
     $("#preview").remove(); 
    }); 
    $("a.preview").mousemove(function(e){ 
     $("#preview") 
      .css("top",(e.pageY - xOffset) + "px") 
      .css("left",(e.pageX + yOffset) + "px"); 
    });   
}; 


// starting the script on page load 
$(document).ready(function(){ 
    imagePreview(); 
}); 

Pour voir la démo: http://cssglobe.com/lab/tooltip/02/

Merci

Cordialement

Répondre

4
$('a.preview').click({ 
    function (event) { 
     event.preventDefault(); 
    }); 

Pour avoir tous les aperçus de se produire à la même position, modifier les coordonnées dans ces lignes

.css("top",(e.pageY - xOffset) + "px") 
.css("left",(e.pageX + yOffset) + "px") 

Écrivez le coordonnez que vous voulez à la place de e.pageY - xOffset et e.pageX + yOffset

+0

Et est-il possible que toute la photo se développe dans la même position de la page? et pas une position relative avec la souris? –

+0

Voir ma réponse mise à jour! –

2

La fonction .preventDefault() fera pour vous:

$("a.preview").click(function(event) { 
    event.preventDefault(); 
}); 
+0

Ah ok Merci !!! Et est-il possible que toute la photo se développe dans la même position de page? et pas une position relative avec la souris? –

+0

Oui, mais vous devriez probablement créer une nouvelle question sur ce problème et ne pas le mélanger avec celui-ci. Garder chaque question aussi spécifique que possible =) – Niklas

Questions connexes