我正在尝试使mouseenter并在jquery中留下事件,但似乎没有任何效果。如果我在图像上拖动鼠标而不遍历浏览器的其他区域,mouseenter就会起作用。整个页面如下所示。我必须使mouseentermouseleave事件起作用。

 <%@ Page Language="C#" MasterPageFile="~/UserProfile/MasterPageProfile.master" AutoEventWireup="true" CodeFile="Photos.aspx.cs" Inherits="Photos" Title="Untitled Page" %>

<%-- Add content controls here --%>
<asp:Content runat="server" ID="Content2" ContentPlaceHolderID="head">

<script src="http://www.google.com/jsapi" type="text/javascript"></script>

<script type="text/javascript">google.load("jquery", "1.3.2");</script>

<link href="../.Jsfiles/Default.css" rel="stylesheet" type="text/css" />

<style type="text/css">
    .Images
    {
        padding: 10px;
        border: 1px solid gray;
    }
    #largeImage
    {
        position: absolute;
        border: 5px solid #DDDDDD;
    }
    .SelectionAnimate
    {
        top: 8px;
        left: 8px;
        position: absolute;
        display: none;
        background-color: #EEEEEE;
    }
    .gallery
    {
    }
    .imaginary
    {
    }
    .real
    {
    }




</style>





<script src="../.Jsfiles/SWFUpload.js" type="text/javascript"></script>
<script src="../.Jsfiles/Handler.js" type="text/javascript"></script>
<script src="../.Jsfiles/fileprogress.js" type="text/javascript"></script>
<script src="../.Jsfiles/swfupload.queue.js" type="text/javascript"></script>
<script src="../.Jsfiles/swfupload.speed.js" type="text/javascript"></script>
<script src="../.Jsfiles/swfupload.swfobject.js" type="text/javascript"></script>
<script type="text/javascript">
var upload1;
$(document).ready(function() {

    upload1 = new SWFUpload({
        // Backend Settings
        upload_url: "/ProfileTenModified/UserProfile/Photos.aspx",


        // File Upload Settings
        file_size_limit: "102400", // 100MB
        file_types: "*.*",
        file_types_description: "All Files",
        file_upload_limit: "10",
        file_queue_limit: "0",

        // Event Handler Settings (all my handlers are in the Handler.js file)
        file_dialog_start_handler: fileDialogStart,
        file_queued_handler: fileQueued,
        file_queue_error_handler: fileQueueError,
        file_dialog_complete_handler: fileDialogComplete,
        upload_start_handler: uploadStart,
        upload_progress_handler: uploadProgress,
        upload_error_handler: uploadError,
        upload_success_handler: uploadSuccess,
        upload_complete_handler: uploadComplete,
        // Button Settings
        button_image_url: "/ProfileTenModified/Images/XPButtonUploadText_61x22.png",
        button_placeholder_id: "spanButtonPlaceholder1",
        button_width: 61,
        button_height: 22,
        // Flash Settings
        flash_url: "../SWFUploader/swfupload.swf",


        custom_settings: {
            progressTarget: "fsUploadProgress1",
            cancelButtonId: "btnCancel1"
        },

        // Debug Settings
        debug: false
    });

    $('.wrapper').live('mouseenter', function() {
        console.log("flicker");
        $(this).find('.real').next().css("display", "block").next().css({ 'display': 'block', 'top': '30px' });
    });
    $('.wrapper').live('mouseleave', function() {
        var element = $(this).find('.real').next().css("display", "none");
        element.next().css({ 'display': 'none', 'top': '30px' });
    });

});
$('.SelectionAnimate').hover(function() { $(this).css("display", "block"); $(this).next().show(); });

</script>



    
        上传图片

            

                            
                
                
                            

     

<div style="width:780px;">
    <asp:ListView ID="ListViewThumbs" runat="server"  GroupItemCount="4"
        OnSelectedIndexChanged="ListViewThumbs_SelectedIndexChanged" DataKeyNames="Id"
        OnItemDataBound="ListViewThumbs_ItemDataBound">
        <LayoutTemplate>
            <div id="groupPlaceholder" runat="server" style="">
            </div>
        </LayoutTemplate>
        <GroupTemplate>
            <div id="itemPlaceholder" runat="server" style="">
            </div>
        </GroupTemplate>
        <SelectedItemTemplate>
            <div>
                <asp:Button ID="Button2" runat="server" Text="Select" CommandName="Select" />
                <asp:Image ID="Image1" runat="server" ImageUrl='<%#"~/UserProfile/ImageHandler.ashx?ImID="+ Eval("Id") %>' />
            </div>
        </SelectedItemTemplate>
        <ItemTemplate>
            <div style="float: left; position: relative; margin: 10px;" >
                <div  class="wrapper">
                    <a class="real" href='<%#"/ProfileTenModified/UserProfile/PhotoCross.aspx?in="+ Eval("Full_Image_Name") +"&mi=" + Eval("User_Id") +"&fd="+ Eval("Album")%>'>
                        <asp:Image ID="Image1" runat="server" ImageUrl='<%#"/ProfileTenModified/setP/"+ Eval("Slide_Thumb_Name") +".JPEG" %>'
                            BorderStyle="Solid" BorderWidth="1px" Width="172px" Height="172px" />
                    </a>
                    <asp:LinkButton CssClass="SelectionAnimate" ID="Selection" runat="server" Text="Set as Display"
                        OnCommand="ListViewThums_Selection_Command" CommandName="selection"></asp:LinkButton>
                    <asp:LinkButton CssClass="SelectionAnimate" ID="Deletion" runat="server" Text="Remove"
                        OnCommand="ListViewThumbs_Command"></asp:LinkButton>
                </div>
                <asp:HiddenField ID="HiddenFieldImageId" runat="server" Value='<%#Eval("Id") %>' />
            </div>
        </ItemTemplate>
    </asp:ListView>
</div>

最佳答案

尝试我修改过的jsFiddle:http://jsfiddle.net/jjay225/r8PKc/2/ mouseenter正常工作,并且可以正确更改css。这是$(this).find('.real img').css({'display':'block','top':'30px'});

关于javascript - jQuery中的mouseenter导致异常行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17061454/

10-11 17:14