小编Kul*_*ary的帖子

注销Angular.js时删除模板缓存

一旦用户点击注销,如何删除Angular模板缓存?我们进行了彻底的研究,并尝试实施大部分可用的解决方案.我们试过以下

HTML元标记

<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
Run Code Online (Sandbox Code Playgroud)

服务器端

res.setHeader('cache-control', 'no-cache', 'no-store', 'must-revalidate');
Run Code Online (Sandbox Code Playgroud)

使用Javascript

我们尝试删除此博客上指定的浏览器历史记录

我们现在面临的问题是,当用户从我们的应用程序退出并按下后退按钮时,他显示空的html模板,因为服务未缓存,我们如何确保模板不缓存?

caching back browser-cache angularjs

9
推荐指数
1
解决办法
2万
查看次数

使用AngularJS中的单个输入过滤多个字段

我有一个JSON对象,如下所示

[{
    "id": 1,
    "firstName": "Jennifer",
    "middleName": null,
    "lastName": "Aniston",
    "address": "New York City",
}, {
    "id": 2,
    "firstName": "Angelina",
    "middleName": null,
    "lastName": "Jolie",
    "address": "Beverley Hills",
}, {
    "id": 3,
    "firstName": "Emma",
    "middleName": null,
    "lastName": "Watson",
    "address": "London",
}]
Run Code Online (Sandbox Code Playgroud)

我正在使用ng-repeat在视图中填充这些数据.

<td ng-repeat="row in list | filter:filterBeauties">
{{row.firstName}} {{row.lastName}}
</td>
Run Code Online (Sandbox Code Playgroud)

现在我有一个输入框,我想用它来过滤这些名称.我想使用相同的输入框来过滤firstName然后过滤lastName而不过滤其他任何东西(例如地址).

<input type="text" placeholder="Filter" ng-model="filterBeauties.firstName">
Run Code Online (Sandbox Code Playgroud)

任何想法我怎样才能实现它?

angularjs angularjs-filter

6
推荐指数
3
解决办法
3万
查看次数

Android上的Chrome不尊重链接点击的z-index

HTML

<div class="container">

    <div class="child">
        <a href="http://www.google.com" target="_blank">Google</a>
    </div>
</div>
<a href="http://www.yahoo.com" target="_blank" class="y">Yahoo</a>
Run Code Online (Sandbox Code Playgroud)

CSS

.container{position: relative;display: block;width: 100px;height: 30px;background: #000;z-index: 7;}
.child{position: absolute;width: 100px;height: 100px;background: #CCC;padding-top: 30px;z-index:9;top: -999px;}
.child a{display: block;}
.container:hover .child{display: block;top: 0;}
.y{z-index: 6;}
Run Code Online (Sandbox Code Playgroud)

工作示例:http://jsfiddle.net/DemjR/6/

我已经在上面的例子中创建了CSS悬停菜单(在链接中),奇怪的是它没有工作,因为它假设在android设备中的chrome(v 25.0.1364.123).但它在我测试的其他所有设备中都能正常工作(ios,windows,mac等..)

问题是(在android中):当你将鼠标悬停在黑匣子上时,会出现一个灰色的div,里面有一个链接(google.com).

当您点击该链接时,它实际上会触发后面的链接(yahoo.com)而不是(google.com)

这是Android设备中的chrome bug吗?

提前致谢

css mobile android google-chrome z-index

5
推荐指数
1
解决办法
2827
查看次数

检查javascript是否已附加到页面?

有没有办法检查javascript文件是否已通过其文件名附加到页面.

例如:

if ("path-to-script/scriptname.js") already embeded
{
call related function
}
else
{
Append '<script src="path-to-script/scriptname.js" type="text/javascript"> </script> '
call related function
}
Run Code Online (Sandbox Code Playgroud)

基本上我不希望在同一页面上连接两个脚本.

javascript jquery

4
推荐指数
2
解决办法
4804
查看次数

如何使用javascript(jquery)替换列表中的src图像?

我想在下面的示例中使用js 将thumb替换为large

从:

<ul id="slide">
<li><img src="pathtoimg/thumbs/imagename.jpg" /></li>
<li><img src="pathtoimg/thumbs/imagename2.jpg" /></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

至 :

<ul id="slide">
<li><img src="pathtoimg/large/imagename.jpg" /></li>
<li><img src="pathtoimg/large/imagename2.jpg" /></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

为了实现它,我使用了以下js代码

 $(window).load(function(){
 var images = $("#slide li img");
 for(var i = 0; i < images.length; i++)
{
var img = images[i];
var src = img.src.replace("thumbs","large");
img.src = src;
}
  });       
Run Code Online (Sandbox Code Playgroud)

上面的代码在现代浏览器中工作正常,但Internet Explorer 7和8 在第0行返回堆栈溢出错误.是否有任何其他方法来替换列表中的img的src而不会出现上面的错误?

提前致谢.

javascript stack-overflow jquery internet-explorer

2
推荐指数
1
解决办法
859
查看次数

使用jquery在元素内的文本更改时调用函数?

我想在页面上的元素内的文本发生变化时执行一个函数.该元素中的文本由另一个外部JS函数更新,因此我对该函数没有任何控制权.

更新:元素是一个跨度.

<span class="dynamic">some Text</span>
Run Code Online (Sandbox Code Playgroud)

jquery

2
推荐指数
1
解决办法
1万
查看次数

如何检查是否从外部js文件调用该函数

有一个外来的JS文件没有从我们页面上的服务器加载.总之,我对该文件没有任何控制权,我无法编辑该文件.我已经创建了一个函数,我想调用该外来文件中的函数.

我知道外文文件的功能名称.我希望在执行外部文件的函数后调用我的函数.我该怎么做?

如果你不明白我的问题,请告诉我.我会再试一次.

提前致谢

javascript function

1
推荐指数
1
解决办法
201
查看次数