我有一个转发器控件来显示用户评论。注释保存在div标签中,在div标签内,还有其他标签。我将悬停属性分配给父标记,以便在鼠标悬停时显示子div标签。当我运行代码时,hover属性仅适用于转发器中的第一个注释。如果将鼠标保留在其他注释上,则hover属性将再次用于第一个注释。这是我的HTML代码 `
<ItemTemplate>
<div id="divComnt" class="Dcomment span9" onmouseover="MouseOver_Comment()" onmouseout="MouseOut_Comment()">
<div class="date" >Posted at <%#Eval("DateAdded")%></div>
<br/>
<p><%# Eval("Comment") %> </p>
<br/>
<%--reply buttons--%>
<div id="Div_replyLinks" class="bottom pull-left replyLink" style="margin:3px 1px 3px 1px">
<a href="#" title="Katılıyorum"><i class=" icon-thumbs-up"></i> </a>
<a href="#" title="Katılmıyorum"><i class=" icon-thumbs-down"></i> </a>
<a href="#" title="Bence..."><i class="icon-comment"></i> </a>
</div>
</div>
</ItemTemplate>
</asp:Repeater>`
这是javascript
function MouseOut_Comment() {
var div = document.getElementById("Div_replyLinks");
div.style.visibility = 'hidden';
}
function MouseOver_Comment() {
var div = document.getElementById("Div_replyLinks").;
div.style.visibility = 'visible';
}
这里有link视觉辅助。(不幸的是,由于缺乏声誉,我无法上传图片) 正如您在图像中看到的那样,活动注释div是第二个,但回复按钮图标在第一个中可见。
答案 0 :(得分:0)
好的,我找到了解决问题的方法。我使用了&lt;%#Container.ItemIndex%&gt;作为我想要改变的可见性属性的div的id值。然后发送&lt;%#Container.ItemIndex%&gt;作为java函数的参数
这是代码
<asp:Repeater ID="RptComments" runat="server" >
<ItemTemplate>
<div id="DivComnt" class="Dcomment span9" onmouseover="MouseOver_Comment('<%#Container.ItemIndex%>')" onmouseout="MouseOut_Comment('<%#Container.ItemIndex%>')">
<div class="date" >Posted at <%#Eval("DateAdded")%></div>
<br />
<p style="margin:2px 5px 2px 5px"><%# Eval("Comment") %> </p>
<br />
<%--reply buttons--%>
<div id="<%#Container.ItemIndex%>" class="bottom pull-right replyLink" style="margin:3px 1px 3px 1px">
<a href="#" title="Katılıyorum"><i class=" icon-thumbs-up"></i></a>
<a href="#" title="Katılmıyorum"><i class=" icon-thumbs-down"></i></a>
<a href="#" title="Bence..."><i class="icon-comment"></i></a>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
这是java代码:
function MouseOver_Comment(id) {
var div = document.getElementById(id);
div.style.visibility = 'visible';
}
function MouseOut_Comment(id) {
var div = document.getElementById(id);
div.style.visibility = 'hidden';
}