在this angular tutorial的“组件模板”部分中,他们使用以下代码:
...
<ul class="phones">
<li ng-repeat="phone in $ctrl.phones | filter:$ctrl.query | orderBy:$ctrl.orderProp" class="thumbnail">
<a href="#/phones/{{phone.id}}" class="thumb">
<img ng-src="{{phone.imageUrl}}" alt="{{phone.name}}" />
</a>
<a href="#/phones/{{phone.id}}">{{phone.name}}</a>
<p>{{phone.snippet}}</p>
</li>
</ul>
...
在锚标记中,他们使用href "#/phones/{{phone.id}}"
的以下值。据我所知,href="#"
会在点击时跳到页面顶部。 href="#mydiv"
会跳转到ID为mydiv
的元素。
我从未见过href="#/folder1/myimg.jpg"
之类的东西。它等同于href="/folder1/myimg.jpg"
吗?
答案 0 :(得分:1)
放#&#34;#&#34;符号作为某事物的href意味着它不指向不同的URL,而是指向同一页面上的另一个id或名称标签。例如:
<a href="#bottomOfPage">Click to go to the bottom of the page</a>
blah blah
blah blah
...
<a id="bottomOfPage"></a>
但是,如果没有身份证或姓名,那么它就会出现在哪里。&#34;
了解更多信息,你可以看到...... What is href="#" and why is it used?
但是在angularJS中,它用于路由请求......因为angularJS为构建Single Page Application
提供了非常好的支持..#之后的参数用于找出要呈现的正确页面....
这是一个很好的example ..但你需要时间深入了解它。
答案 1 :(得分:0)
似乎所有锚定事件都会被javascript中断,并且可能会使用 ajax 在后台加载页面,浏览器的地址行也会更改,但浏览器不会重新加载页面。在HTML4中,它无法在不重新加载页面的情况下更改地址行。所以这是一种解决方法: