【发布时间】:2013-06-19 13:35:14
【问题描述】:
我正在开发一个使用 Angularjs 和 Twitter Bootstrap 的项目。
Bootstrap 使用 # 来切换弹出框、模态框等组件。 例如:
<a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>
<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Modal header</h3>
</div>
<div class="modal-body">
<p>One fine body…</p>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary">Save changes</button>
</div>
</div>
问题是当我单击具有此类 href 属性的按钮时,会导致整个页面重新加载,这意味着当前页面中的所有内容都丢失了。 有没有办法防止这种情况发生?
一些额外信息:
当我将鼠标悬停在按钮上时,网址很奇怪。例如,我当前页面的 url 是
localhost:8080/#/account
按钮的href是
href="#myModal"
我希望看到网址
localhost:8080/#/account#myModal
然而,我看到的是
localhost:8080/#myModal
我不确定这是否与我的问题有关。
提前致谢!
编辑 1
我看过 Stewie 谈到的另一篇文章。它解释了angularjs中的html5mode和hashbang,但并没有真正解决我的问题。
我尝试了html5mode,当我点击按钮时它仍然重新加载页面
【问题讨论】:
-
当
<a>具有明确定义的内部导航页面语义角色时,您为什么要使用它?这不是资源链接,为什么不直接使用<span>? -
您查看过
data-target选项吗?这样你就可以让角度选择href。
标签: javascript html twitter-bootstrap angularjs href