APP混合应用 a标签跳转两次协议链接

这个a链接会跳转2次:

<a class="link-to-shop comments" href="jgos://detail/comments/@ViewBag.Id/1">
    <div class="shop-link">
        <div class="shop-left">
            商品评价( @ViewBag.CommentCount )
        </div>
        <div class="icon-right">
            <img src="/Images/goon.png" class="brandgo" />
            <!--<span class="brandname">></span>-->
        </div>
    </div>
</a>

而这个a链接只跳转1次:

<a class="link-to-shop" href="jgos://brandshop/@(goods_shop.id)/@(goods_shop.name)">
    <div class="shop-link">
        <div class="shop-left">
            <img src="@(goods_shop.icon)" class="brandlogo" />
            <div class="shop-medium">
                <span class="brandname">
                    @(goods_shop.name)
                    @if (goods_shop.is_brandshop == 1)
                    {
                        <text>
                            品牌自营
                        </text>
                    }
                </span>
                <span class="goods-num">商品 @ViewBag.ShopGoodsCount 件</span>
            </div>
        </div>
        <div class="icon-right">
            <img src="/Images/goon.png" class="brandgo" />
            <!--<span class="brandname">></span>-->
        </div>
    </div>
</a>

样式结构都是一样的额,跳转原生协议的时候就会出现这个问题。Android不是很明显,但是返回的时候就是返回需要经过两个相同的目的页面;iOS很明显跳转了2个相同的目的页面。原因是什么,我现在也不是很清楚。
but,解决方法是有的:

<div class="link-to-shop comments" onclick="myjs(); return false;">
    <div class="shop-link">
        <div class="shop-left">
            商品评价( @ViewBag.CommentCount )
        </div>
        <div class="icon-right">
            <img src="/Images/goon.png" class="brandgo" />
            <!--<span class="brandname">></span>-->
        </div>
    </div>
</div>

var ID = @ViewBag.Id
    function myjs() {
        window.location.href = "jgos://detail/comments/" + ID + "/1"
}

or

<a class="link-to-shop comments" href="jgos://detail/comments/@ViewBag.Id/1" onclick="return false;">
    <div class="shop-link">
        <div class="shop-left">
            商品评价( @ViewBag.CommentCount )
        </div>
        <div class="icon-right">
            <img src="/Images/goon.png" class="brandgo" />
            <!--<span class="brandname">></span>-->
        </div>
    </div>
</a>

当点击a标签时,JavaScript代码返回值为false,故此链接默认行为未被触发。

可移步至:阻止a标签的默认行为

热评文章