试下这个
(function ($) {
        $.fn.preview = function () {
            var xOffset = 10;
            var yOffset = 20;
            var w = $(window).width();
            $(this).each(function () {
                var iii;
                $(this).hover(function (e) {
                    function f() {
                        if (/.png$|.gif$|.jpg$|.bmp$/.test($(this).attr("href"))) {
                            $("body").append("<div id='preview'><div><img src='" + $(this).attr('href') + "' /><p>" + $(this).attr('title') + "</p></div></div>");
                        } else {
                            $("body").append("<div id='preview'><div><p>" + $(this).attr('title') + "</p></div></div>");
                        }
                        $("#preview").css({
                            position: "absolute",
                            padding: "4px",
                            border: "1px solid #f3f3f3",
                            backgroundColor: "#eeeeee",
                            top: (e.pageY - yOffset) + "px",
                            zIndex: 1000
                        });
                        $("#preview > div").css({
                            padding: "5px",
                            backgroundColor: "white",
                            border: "1px solid #cccccc"
                        });
                        $("#preview > div > p").css({
                            textAlign: "center",
                            fontSize: "12px",
                            padding: "8px 0 3px",
                            margin: "0"
                        });
                        if (e.pageX < w / 2) {
                            $("#preview").css({
                                left: e.pageX + xOffset + "px",
                                right: "auto"
                            }).fadeIn("fast");
                        } else {
                            $("#preview").css("right", (w - e.pageX + yOffset) + "px").css("left", "auto").fadeIn("fast");
                        }
                    }
                    iii = setTimeout(function (a) { f.call(a) }, 1000, this);
                }, function () {
                    clearTimeout(iii);
                    $("#preview").remove();
                }).mousemove(function (e) {
                    $("#preview").css("top", (e.pageY - xOffset) + "px")
                    if (e.pageX < w / 2) {
                        $("#preview").css("left", (e.pageX + yOffset) + "px").css("right", "auto");
                    } else {
                        $("#preview").css("right", (w - e.pageX + yOffset) + "px").css("left", "auto");
                    }
                });
            });
        };
    })(jQuery);

解决方案 »

  1.   

    $(this).hover(function(e){
                    if(/.png$|.gif$|.jpg$|.bmp$/.test($(this).attr("href"))){
                        $("body").append("<div id='preview'><div><img src='"+$(this).attr('href')+"' /><p>"+$(this).attr('title')+"</p></div></div>");
                    }else{
                        $("body").append("<div id='preview'><div><p>"+$(this).attr('title')+"</p></div></div>");
                    }
                    $("#preview").css({
                        position:"absolute",
                        padding:"4px",
                        border:"1px solid #f3f3f3",
                        backgroundColor:"#eeeeee",
                        top:(e.pageY - yOffset) + "px",
                        zIndex:1000
                    });
                    $("#preview > div").css({
                        padding:"5px",
                        backgroundColor:"white",
                        border:"1px solid #cccccc"
                    });
                    $("#preview > div > p").css({
                        textAlign:"center",
                        fontSize:"12px",
                        padding:"8px 0 3px",
                        margin:"0"
                    });
                    if(e.pageX < w/2){
                        $("#preview").css({
                            left: e.pageX + xOffset + "px",
                            right: "auto"
                        }).fadeIn("fast");
                    }else{
                        $("#preview").css("right",(w - e.pageX + yOffset) + "px").css("left", "auto").fadeIn("fast");   
                    }
                      $("#preview").hide();
                      setTimeout(function(){$("#preview");},1e3);

                }1秒后显示 那么先隐藏  1秒后show()  呵呵另外固定样式 请写在  css文件里  不要写代码里
    只有这样的 top:(e.pageY - yOffset) + "px",  才需要代码写