我不知道问题是否与Angular有关,或者我犯了错误
我有一个<article id="about">
,一个链接<a href="#about">
,我正在尝试使用
:target{
border: solid 1px red;
}
当我点击链接时,文章应该有一个红色边框,不应该吗?当我点击链接时,网址偏离/company
更改为/company#about
但没有任何反应,我还在控制台中使用JQuery $(':target')
检查并返回null
。
我认为这可能与Angular有关,其中路由机制会干扰某些默认行为。我正在使用$locationProvider.html5Mode(true)
,Angular 1.1.4和Chrome26
编辑:最后得到了一个不起作用的示例here,它一直有效,直到我在app.run()
中注入$ location。
答案 0 :(得分:1)
只是猜测但是:
我认为点击事件可能会返回“false”。 也就是说,某些代码会运行,并且默认链接点击行为会被覆盖。
尝试使用末尾的哈希值将页面网址输入到空白标签中。如果你的:target css适用于那种情况,你就会知道它是一个javascript的东西。
也许框架会添加一个类或其他标识符,您可以轻松地设置样式?或者,如果您检查DOM,对它的引用会存储在某个对象中,您可以使用jQuery设置样式吗?
答案 1 :(得分:1)
答案 2 :(得分:0)
如果将target =“ _ self”放入标签中,只要启用了HTML5模式,它就会解决角度路由问题。