Tag: JavaScript

使用Webpack将jQuery暴露给真正的Window对象

我不想将jQuery对象暴露给在浏览器中的开发者控制台中可访问的全局窗口对象。 现在在我的webpackconfiguration我有以下几行: plugins: [ new webpack.ProvidePlugin({ $: 'jquery', jQuery: 'jquery' }) ] 这些行将jQuery定义添加到我的webpack模块中的每个文件。 但是当我构build项目并尝试像这样访问开发者控制台中的jQuery: window.$; window.jQuery; 它说这些属性是未定义的… 有没有办法来解决这个问题?

有没有简单的方法来重新加载CSS而不重新加载页面?

我正在尝试使用预览function制作一个实时的页内css编辑器,可以重新加载样式表并应用它,而无需重新加载页面。 最好的办法是什么呢?

防止页面内的button在点击时刷新页面

我在使用窗体中的button时遇到了一个问题。 我想要那个button来调用函数。 它确实有,但是会导致不必要的结果刷新页面。 我简单的代码是这样的 <form method="POST"> <button name="data" onclick="getData()">Click</button> </form> 点击button,函数被调用刷新页面,这将重置所有我以前的请求,影响当前页面,这是前一个请求的结果。 我应该怎么做,以防止页面刷新?

如何防止用户生成的HTML内的Javascript注入攻击

我正在保存用户提交的HTML(在数据库中)。 我必须防止Javascript注入攻击。 我所看到的最有害的是一个style =“expression(…)”的脚本。 除此之外,相当数量的有效用户内容将包括特殊字符和XML结构,因此如果可能的话,我想避免使用白名单方法。 (列出每个允许的HTML元素和属性)。 Javascript攻击string的例子是: 1) “你好,我对<dog>元素有一个<script>警告(”坏!“)</ script>问题…” 2) “嗨,这个<b style =”width:expression式(alert('bad!'))“>狗</ b>是黑色的。 有没有办法来防止这样的Javascript,并保持完整的rest? 我迄今唯一的解决scheme是使用正则expression式来删除某些模式。 它解决了案例1,但不是案例2。 编辑:对不起,忘了提及环境 – 它本质上是MS堆栈: SQL Server 2005 C#3.5(ASP.NET) Javascript(显然)和jQuery。 我想chopppoint是ASP.NET层 – 任何人都可以制作一个错误的HTTP请求。 编辑2: 感谢大家的链接。 假设我可以定义我的列表(他的内容将包括许多math和编程结构,所以白名单将是非常恼人的)我仍然有一个问题在这里: 什么样的parsing器可以让我删除“坏”的部分? 坏的部分可能是一个完整的元素,但是那些驻留在属性中的脚本又如何? 我无法删除<a hrefs> willy-nilly。

在Safari中设置跨域Cookie

Evernote的小书签能够做到这一点,因此即使赏金会以非生产性的方式进行,最高的答案也不会回答这个问题。 我必须从B.com域调用域名A.com(它用cookie设置cookie)。 我所做的域名B.com是(JavaScript): var head = document.getElementsByTagName("head")[0]; var script = document.createElement("script"); script.src = "A.com/setCookie?cache=1231213123"; head.appendChild(script); 这会在我testing的每个浏览器上设置A.com上的Cookie,但Safari除外。 令人惊讶的是,即使没有P3P头文件,也可以在IE6中使用。 有没有什么办法可以使这个工作在Safari?

清除谷歌浏览器中的JavaScript控制台

我想知道如果我能用一些命令清理控制台.. console.log() ,可以打印…有清除控制台的命令?.. 我试图console.log(console); 并在下面得到这个function… assert: function assert() { [native code] } constructor: function Console() { [native code] } count: function count() { [native code] } debug: function debug() { [native code] } dir: function dir() { [native code] } dirxml: function dirxml() { [native code] } error: function error() { [native code] } group: […]

刷新其中包含Google广告的Div

我有一个持有谷歌广告的<div> 。 我的网站大多是AJAX,不需要刷新浏览器。 这意味着我的广告也不会刷新,这是不理想的,一个用户整天盯着一个广告。 所以我想要一种方式来刷新页面上的特定<div> 。 我find了许多解决scheme,但他们没有工作。 例如,使用JQuery的html函数: $("#ads").html("google ad script here"); 这设法刷新整个页面不知道如何。 我也可以向包含Google广告的HTML页面发出AJAX请求,但是我猜测它会和上面的尝试有相同的效果。 我不想使用iFrames。 有没有其他select对我开放? 我的豌豆脑不能再想了。 🙂 编辑: 这是允许的,因为我只会在用户点击一个链接时才启动刷新。 一个最好的例子就是雅虎邮箱 – 当用户点击一个链接,然后显示一个新的广告时,他们的新AJAX邮箱使用同样的方法。

你如何用AngularJS或Javascript下载文件?

我在隐藏的textarea中有一些文本。 当一个button被点击时,我想将提供的文本作为一个.txt文件提供下载。 这可能使用AngularJS或Javascript?

打破诺言链,并根据链中断的步骤调用函数(被拒绝)

更新: 为了帮助这篇文章的未来观众,我创build了pluma答案的演示 。 题: 我的目标看起来相当简单。 step(1) .then(function() { return step(2); }, function() { stepError(1); return $q.reject(); }) .then(function() { }, function() { stepError(2); }); function step(n) { var deferred = $q.defer(); //fail on step 1 (n === 1) ? deferred.reject() : deferred.resolve(); return deferred.promise; } function stepError(n) { console.log(n); } 这里的问题是,如果我在第一步失败, stepError(1)和stepError(2) 。 如果我不return $q.reject那么stepError(2)将不会被触发,但是step(2)将会被理解。 […]

如何使用JQuery $ .scrollTo()函数滚动窗口

每次用户靠近文档顶部时,我都试图向下滚动100px。 当用户靠近文档的顶部时,我有函数执行,但.scrollTo函数不起作用。 我在之前和之后发出警报,检查是否确实是该线路的阻断,只有第一个警报熄灭,代码如下: alert("starting"); $.scrollTo({ top: '+=100px', left: '+=0px' }, 800); alert("finished"); 我知道我有正确的jquery页面链接,因为我使用了许多其他的jQueryfunction,他们都工作正常。 我也尝试从上面删除'px',这似乎没有什么区别。