jQuery.hover与AJAX无法正常工作

时间:2010-09-10 08:06:17

标签: javascript jquery ajax hover mouseout

我正在努力将我的jquery悬停与$ .post结合使用。

我的目标是创建一堆选择按钮,如果我将鼠标悬停在其上,则图像会发生变化(此图像的路径将加载$ .post)。鼠标输出时图像将更改为默认值。

如果单击选择按钮,它将永久更改图像。

问题是即使在悬停时图像有时会永久更改。

link text尝试一下 尝试将选项悬停在选择上一段时间,图像不会改变回来。

我该如何解决这个问题?

var origpic;
var klik;
var inputval;
var newpic;
var origbnazev;
var cesta = "/ajaxobrazek.php";
$("input[name='barva']").hover(function() { 
    klik = 0;
    inputval = $(this).val();
    origbnazev = $("#bnazev").text();
    origpic = $("#kocarekimg").attr("src");
    $.post(cesta, {dodavatel_id : "<?php echo $row['dodavatel_id']?>", barva_cislo : inputval},     

    function(data){
        $("#kocarekimg").attr("src","/images/maly-"+data+".jpg");
     });
    $.post("/ajaxbarva.php", {barva_cislo : inputval}, function(data){
            $("#bnazev").text(data);
        });

    },function(){ 
    if (klik == 0) {
    $("#bnazev").text(origbnazev);  
    $("#kocarekimg").attr("src",origpic);}  
    });  

    $("input[name='barva']").click(function() { 
    klik = 1;

    $.post(cesta, {dodavatel_id : "<?php echo $row['dodavatel_id']?>", barva_cislo : inputval}, 

    function(data){
     $("#kocarekimg").attr("src","/images/maly-"+data+".jpg");
     origpic = "/images/maly-"+data+".jpg";
     }); 

     });

    //thumbnails
   $(".imgtn").hover(function() { 
    origpic = $("#kocarekimg").attr("src");
    newpic = $(this).attr("src");
    newpic = newpic.replace("tn-","maly-");
    $("#kocarekimg").attr("src",newpic); 
    },function(){ 
   $("#kocarekimg").attr("src",origpic);  
    });  

1 个答案:

答案 0 :(得分:1)

我在Chrome中没有任何问题,在Firefox和IE中也没有任何问题。我唯一看到的是该网站没有应有的响应,而且 - 坦率地说 - 我不明白为什么你一旦加载就不会缓存图像引用。

你的脚本在每次悬停时都会进行ajax调用,这是无稽之谈。