首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS -不需要的IE8重定向

AngularJS -不需要的IE8重定向
EN

Stack Overflow用户
提问于 2013-03-30 04:54:39
回答 3查看 2.2K关注 0票数 2

使用AngularJS,这是:

代码语言:javascript
复制
<a ng-click="Click()" ng-href="#">Click me</a>

在IE8中重定向到/#。如下所示:

代码语言:javascript
复制
<a ng-click="Click()" href="#">Click me</a>

还有这个:

代码语言:javascript
复制
<a ng-click="Click()">Click me</a>

最后一个给了/。我遵循了所有让IE快乐的指导原则:

代码语言:javascript
复制
<!--[if lt IE 9]>
  <script src="js/3rd party/html5.js"></script>
<![endif]-->
<!--[if lte IE 8]>
  <script>
    document.createElement('ng-include');
    document.createElement('ng-pluralize');
    document.createElement('ng-view');
    document.createElement('ng:include');
    document.createElement('ng:pluralize');
    document.createElement('ng:view');
  </script>
<![endif]-->
<!--[if lt IE 8]>
  <script src="js/3rd party/json2.js"></script>
<![endif]-->

包括使用以下内容:

代码语言:javascript
复制
<div ng-view></div>

在IE7或任何优秀的浏览器中都不会发生这种情况。只有IE8。

我只想让它调用我的作用域的Click函数,而不做任何重定向。我如何在IE8中实现这一点呢?

EN

回答 3

Stack Overflow用户

发布于 2014-01-15 19:19:07

button在IE8中不能正常工作。

票数 3
EN

Stack Overflow用户

发布于 2013-07-17 07:08:03

关闭html5Mode

代码语言:javascript
复制
$locationProvider.html5Mode(false);

这将解决问题,但我的问题是为什么?

更好的解决方案是使用按钮而不是

代码语言:javascript
复制
<button ng-click="Click()" class="link">Click me</button>

您可以使用css更改按钮的样式

代码语言:javascript
复制
button.link { border:none; background: none;}
button.link:hover {text-decoration:underline}
票数 0
EN

Stack Overflow用户

发布于 2014-08-13 17:18:54

我知道这是一个老帖子,但return false;在ng-click处理程序中不起作用。

我发现我必须将event.result设置为false,这样jQuery就会在angular完成后使用事件

代码语言:javascript
复制
$scope.Click = function ($event) {                

            // needed for IE8 - jQuery will preventDefault action for href=#                
            if ($event != undefined) {
                $event.result = false;
            }
        }

点击我

如果您使用的是bootstrap,其中有一个下拉菜单.e.g,这将特别有用

代码语言:javascript
复制
<button type="button" class="btn dropdown-toggle btn-primary" ng-disabled="disabled">
    Actions <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
    <li><a href="#" ng-click="Click1($event)">Option 1</a></li>
    <li><a href="#" ng-click="Click2($event)">Option 2</a></li>
    <li><a href="#" ng-click="Click3($event)">Option 3</a></li>        
</ul>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15711265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档