Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使可点击<;部门>;有了内部链接,如何只触发一个动作?_Javascript_Jquery_Html_Css_Asp.net Mvc - Fatal编程技术网

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();})必须在回调函数的参数中传递事件。这就是解决方案;)是的,就是这样,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会记下你的答案。是的,谢谢!页面加载程序现在也在运行,因为动画没有执行!谢谢我会把你的答案记下来。