Javascript 使可点击<;部门>;有了内部链接,如何只触发一个动作?
我的代码中有一个Javascript 使可点击<;部门>;有了内部链接,如何只触发一个动作?,javascript,jquery,html,css,asp.net-mvc,Javascript,Jquery,Html,Css,Asp.net Mvc,我的代码中有一个,可点击。单击时,高度和文本将使用jQuery函数$(div).animate()展开。这是我想要的,但我仍然遇到一个小问题 这里有几个链接。这些链接都重定向到另一个页面。单击其中一个链接时,div仍会设置动画,如果加载时间有点慢,则会看到完整的动画,然后转到链接页面。这不是它必须做的。如果单击div旁边的链接,则不需要触发动画,因为用户将被重定向。只有在单击div本身(而不是其内部的链接)时,才会触发动画 你知道我怎样才能做到这一点吗?这是否可以通过使用Z索引实现 这就是我的d
,可点击。单击
时,高度和文本将使用jQuery函数$(div).animate()展开代码>。这是我想要的,但我仍然遇到一个小问题
这里有几个链接。这些链接都重定向到另一个页面。单击其中一个链接时,div仍会设置动画,如果加载时间有点慢,则会看到完整的动画,然后转到链接页面。这不是它必须做的。如果单击div旁边的链接,则不需要触发动画,因为用户将被重定向。只有在单击div本身(而不是其内部的链接)时,才会触发动画
你知道我怎样才能做到这一点吗?这是否可以通过使用Z索引实现
这就是我的div的外观:
<div class="question-summary collapsed unselectable">
<div class="votes">
<div class="mini-counts">@item.GetTotalVotes()</div>
<div>Votes</div>
</div>
@if (item.Answers.Count == 0)
{
<div class="votes unanswered">
<div class="mini-counts">@Html.DisplayFor(modelItem => item.Answers.Count)</div>
<span>Answers</span>
</div>
}
else
{
<div class="votes answered">
<div class="mini-counts">@Html.DisplayFor(modelItem => item.Answers.Count) </div>
@if (item.Answers.Count == 1)
{
<span>Answer</span>
}
else
{
<span>Answers</span>
}
</div>
}
<div class="summary">
<h3 class="link-ontop">@Html.ActionLink(@item.GeneralQuestion, "Details", new { id = item.QuestionId})</h3>
<p class="extra-info">@item.GetShortExplanation(160) <span class="link-ontop">@Html.ActionLink("Read More...", "Details", new { id = item.QuestionId})</span></p>
<div class="meta-info">
@item.DateSubmitted.ToShortDateString()
@Html.DisplayFor(itemModel => item.Author.FirstName)
</div>
</div>
<div class="tags">
@foreach (var topic in item.Topics)
{
<a href="@Url.Action("IndexByTopic","Question",new { topicId = @topic.TopicId })" class="tag-name">@topic.Name</a>
}
</div>
<div class="no-animate">
<h1>@item.GeneralQuestion</h1>
@Html.DisplayWithBreaks(item.Explanation)
<br />
<br />
<a href="@Url.Action("Details", new { id = item.QuestionId })">This question has @item.Answers.Count answers, click here for details!</a>
</div>
</div>
@item.GetTotalVotes()
投票
@如果(item.Answers.Count==0)
{
@DisplayFor(modelItem=>item.Answers.Count)
答案
}
其他的
{
@DisplayFor(modelItem=>item.Answers.Count)
@如果(item.Answers.Count==1)
{
答复
}
其他的
{
答案
}
}
@ActionLink(@item.GeneralQuestion,“Details”,新的{id=item.QuestionId})
@item.getshortexplainion(160)@Html.ActionLink(“阅读更多…”,“详细信息”,新的{id=item.QuestionId})
@item.DateSubmitted.ToSortDateString()
@DisplayFor(itemModel=>item.Author.FirstName)
@foreach(item.Topics中的var主题)
{
}
@项目.一般问题
@Html.DisplayWithBreaks(项目说明)
这是在MVC.NET项目中使用的,这就是为什么html代码中有Razor语法。使用.stopPropagation()代码>要停止事件Bubbling,请执行以下操作:
$('div a').on('click', function(e){
e.stopPropagation();
});
由于已将事件绑定到div,因此如果单击div的任何子元素,则事件往往会冒泡到dom树,这就是div获取click事件以启动其动画功能的原因
event.stopPropagation()代码>用于停止向dom树冒泡事件。因此,通过上面的单击事件,您可以停止事件向其父级冒泡,该父级绑定了动画功能。使用.stopPropagation()代码>要停止事件Bubbling,请执行以下操作:
$('div a').on('click', function(e){
e.stopPropagation();
});
由于已将事件绑定到div,因此如果单击div的任何子元素,则事件往往会冒泡到dom树,这就是div获取click事件以启动其动画功能的原因
event.stopPropagation()代码>用于停止向dom树冒泡事件。因此,通过上面的单击事件,您可以停止事件向其父级冒泡,该父级绑定了动画功能。使用.stopPropagation()代码>要停止事件Bubbling,请执行以下操作:
$('div a').on('click', function(e){
e.stopPropagation();
});
由于已将事件绑定到div,因此如果单击div的任何子元素,则事件往往会冒泡到dom树,这就是div获取click事件以启动其动画功能的原因
event.stopPropagation()代码>用于停止向dom树冒泡事件。因此,通过上面的单击事件,您可以停止事件向其父级冒泡,该父级绑定了动画功能。使用.stopPropagation()代码>要停止事件Bubbling,请执行以下操作:
$('div a').on('click', function(e){
e.stopPropagation();
});
由于已将事件绑定到div,因此如果单击div的任何子元素,则事件往往会冒泡到dom树,这就是div获取click事件以启动其动画功能的原因
event.stopPropagation()代码>用于停止向dom树冒泡事件。因此,使用上面的click事件,您可以停止事件冒泡到其父级,该父级绑定了动画功能。您可以尝试我尝试的$(a)代码>但它似乎不起作用<代码>$(a).单击(函数(事件){event.stopPropagation();})代码>必须在回调函数的参数中传递事件。这就是解决方案;)您可以尝试我尝试的$(a)代码>但它似乎不起作用<代码>$(a).单击(函数(事件){event.stopPropagation();})代码>必须在回调函数的参数中传递事件。这就是解决方案;)您可以尝试我尝试的$(a)代码>但它似乎不起作用<代码>$(a).单击(函数(事件){event.stopPropagation();})代码>必须在回调函数的参数中传递事件。这就是解决方案;)您可以尝试我尝试的$(a)代码>但它似乎不起作用<代码>$(a).单击(函数(事件){event.stopPropagation();})代码>必须在回调函数的参数中传递事件。这就是解决方案;)是的,就是这样,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会把你的答案记下来。