小编Mic*_*ill的帖子

AngularJS:防止触发子元素的'mouseenter'事件

我正在玩AngularJS框架,我偶然发现了一个问题.我做了一个名为'enter'的指令.它触发mouseenter和的功能mouseleave.我将它作为属性应用于表行元素.它现在为每个子元素(所有列等)触发,但只有当您将鼠标放在表行上时才应触发它.

这是我的指令的样子:

myapp.directive('enter', function(){
    return {
        restrict: 'A', // link to attribute... default is A
        link: function (scope, element){
            element.bind('mouseenter',function() {
                console.log('MOUSE ENTER: ' + scope.movie.title);
            });
            element.bind('mouseleave',function() {
                console.log('LEAVE');
            });
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

这是一个例子:http: //jsfiddle.net/dJGfd/1/

您必须打开Javascript控制台才能看到日志消息.

在AngularJS中实现我想要的功能的最佳方法是什么?如果有合理的AngularJS解决方案,我更喜欢使用jQuery.

mouseover event-bubbling mouseenter angularjs

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

删除文本文件中的特定行?

如何从文本文件中删除单个特定行?例如第三行或任何其他行.我试过这个:

line = 2
file = File.open(filename, 'r+')
file.each { last_line = file.pos unless file.eof? }
file.seek(last_line, IO::SEEK_SET)
file.close
Run Code Online (Sandbox Code Playgroud)

不幸的是,它什么也没做.我尝试了很多其他解决方案,但没有任何效果.

ruby file line

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

PHP:如何确定浏览器是否支持PHP中的javascript?

我正在构建一个AJAX深度链接的站点.

如果用户尝试使用Javascript不支持的浏览器访问该站点或者它是搜索爬虫,我希望PHP加载页面的所有HTML代码.基本上PHP将返回整个页面.

相反,当用户尝试使用支持Javascript的浏览器访问该站点时,我希望PHP只返回模板代码,让Javascript(AJAX)处理剩下的事情.基本上PHP只会加载设计元素,让Javascript用内容填充它们.

我查看了PHP的get_browser()功能,但它似乎不是一个可靠的工具.什么是行业的做法,看看浏览器是否支持Javascript,或者它是使用PHP的搜索爬虫?


背景:

为什么我希望该网站有此行为.

由于我只想通过加载地址来加载主页:example.com,它不向PHP发送任何查询,PHP返回主页的HTML代码.但是,当用户尝试加载以下页面时,这会导致问题:example.com#foo.因此,对于此示例,PHP将返回主页,并且一旦加载主页,Javascript(AJAX)将更改内容以便它显示正确的内容#foo.这将使用户看到主页,因此加载时间将变慢并且用户体验将不会那么好.但是,如果我的PHP脚本可以弄清楚,如果使用Javascript支持的浏览器试图加载页面,它将只返回网站的模板,该模板没有内容)并且javascript将使用内容填充该模板应该为#foo显示.另一方面,如果Javascript非分离浏览器或爬虫将尝试访问该页面example.com#foo,则将返回主页.

我正在使用SWFaddress(http://www.asual.com/swfaddress/)库进行深层链接.


编辑

感谢你们.我以前没想过<noscript></noscript>用过.

这是我决定做的.PHP默认情况下会加载诸如example.com或之前的页面example.com#foo(example.com从PHP的角度来看基本上是相同的,因为定义的片段不会发送到服务器)空白(只是可视化模板),<noscript>主页内容中包含标签.这样,使用javascript的用户将无法看到主页,AJAX将根据#foo片段填充页面内容.另一方面,搜索爬虫和没有javascript的用户将看到主页.

再次感谢你.我认为这是非常简单和优雅的解决方案.如果您有任何进一步的建议,请发表评论或其他答案.

javascript php ajax deep-linking

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

Javascript中最常见的计算能力浪费是什么?

我们都见过这样做的人:

jQuery('a').each(function(){
    jQuery(this)[0].innerHTML += ' proccessed';
});

function letsPoluteNS() {
    polute = '';
    for (morePolution = 0; morePolution < arguments.length; morePolution++)
        polute.join(arguments[morePolution]);
    return polute;
}
Run Code Online (Sandbox Code Playgroud)

等等.我想知道人们看到了最常见的JavaScript/jQuery技术,它会减慢页面速度和/或浪费JavaScript引擎的时间.

我知道这个问题可能似乎不符合一个被接受的问题,但我在问"什么是最普遍接受的浪费?"

javascript performance jquery

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

IE7/8 Javascript陷阱

我已经构建了一个小的单页内联网应用程序,它非常Javascript.它在Chrome和Firefox中运行得很漂亮,但是只要你在IE7/8中加载它,界面就会变得极其缓慢.它有各种jQueryUI小部件,如draggables和可调整大小的窗格,一旦你开始点击和拖动,帧速率就会下降到不可用的区域.

在我尝试理解IE8开发人员工具之前,IE7/8脚本引擎中是否有任何已知的问题我可以在我的代码中检查?我已经看到了.innerHTML()很慢的参考,但我不知道是否还有其他我应该寻找的东西.

javascript jquery internet-explorer jquery-ui

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

AjaxOption中的字符串参数在提交时为null但在响应中显示

在这段代码中

@using (Ajax.BeginForm("MyAction", "MyRouteValues", new AjaxOptions { OnSuccess = "myJSFunction(" + Model.IntegerParameter + ", '" + Model.StringParameter + "')" }))
Run Code Online (Sandbox Code Playgroud)

为什么我的Javascript正确识别Model.IntegerParameter但Model.StringParameter为null?当我检查响应时,我确信它上面有数据,它显示如下

data-ajax-success="myJSFunction(111111, &#39;AAAAAA&#39;)"
Run Code Online (Sandbox Code Playgroud)

我的View模型非常简单,看起来像这样

public class MyViewModel
{
    public int IntegerParameter { get; set; }
    public string StringParameter { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

添加了信息

我尝试将第二个参数更改为int,现在它没有传递为null0仍然显示在FireBug的响应中.

我添加了Html.Raw,但它仍然null在Javascript中获得一个值.

这是我在控制台响应中得到的真实世界截图:

在此输入图像描述

---------------另一个更新------------------

我尝试了所有的建议,但它似乎是MVC s#arp中的一个BUG?我试过不同的项目和不同的PC,它仍然适合我.我注意到这只会发生,如果它来自一个模型它看起来像在Javascript响应之间发生的事情,无论是参数中的第一个,第二个还是任何位置,如果我使用硬编码值,字符串的值都会丢失如:

myJSFunction(" + Model.IntegerParameter + ", 'AAAAAAAA')"
Run Code Online (Sandbox Code Playgroud)

我得到了一个成功的结果,如果我像这样使用jQuery:

myJSFunction(" + Model.IntegerParameter + ", $('#SearchString').val())"
Run Code Online (Sandbox Code Playgroud)

这也有效,但是如果我确实传递了一个像这样的字符串的模型

myJSFunction(" + Model.IntegerParameter …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc jquery s#arp-architecture asp.net-mvc-3

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

如何使用Javascript在网页上获取图像的文件大小?

我希望能够在网页上的图像上获取文件大小.

所以,假设我在页面上有一个图像(已加载),如下所示:

如何在Javascript中调用函数(或者更好的是,jquery)来获取图像的文件大小(而不是维度)?

重要的是要注意我没有使用任何输入或让用户上传图像,从文件API的浏览按钮获取图像大小有很多SO答案.

我想要做的就是根据它的id和src url获取页面上任意图像的文件大小.

编辑:我正在处理某些图像的保持连接,因此Content-Length标头不可用.

javascript url image filesize src

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

Electron Builder 代码签名下载证书错误

我正在构建一个 Electron 应用程序并使用 npm 包电子构建器为 Windows 构建应用程序和安装程序。我正在尝试使用环境变量CSC_LINKCSC_KEY_PASSWORD环境变量来签署应用程序,如下所述:https : //github.com/electron-userland/electron-builder#travis-appveyor-and-other-ci-servers

第一次尝试时,错误和堆栈跟踪是:

Unhandled rejection Error: unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1065:38)
at emitNone (events.js:80:13)
at TLSSocket.emit (events.js:179:7)
at TLSSocket._init.ssl.onclienthello.ssl.oncertcb.TLSSocket._finishInit (_tls_wrap.js:593:8)
at TLSWrap.ssl.onclienthello.ssl.oncertcb.ssl.onnewsession.ssl.onhandshakedone (_tls_wrap.js:425:38)
From previous event:
at Object.downloadCertificate (C:\projects\presentation\Electron\node_modules\electron-builder\src\codeSign.ts:97:18)
...
Run Code Online (Sandbox Code Playgroud)

然后我尝试设置环境变量NODE_TLS_REJECT_UNAUTHORIZED=0,现在得到一个不同的错误:

Unhandled rejection Error: Request error, status 400: Bad Request
at ClientRequest.<anonymous> (C:\projects\presentation\Electron\node_modules\electron-builder\src\httpRequest.ts:36:16)
...
Run Code Online (Sandbox Code Playgroud)

在电子构建器中调用的特定行httpRequest.ts似乎只是使用节点的 https 模块:https: https.request(...) //github.com/electron-userland/electron-builder/blob/master/src/httpRequest.ts#L28

这让我相信 Windows 机器或证书有问题。我在 Windows 10 节点 5.9.0 上运行它。

node.js electron electron-builder

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

如何使用正则表达式仅查找没有混合字母值的数值?

我有一个等式:+8x2+10y2-99+5=99.我需要单独的数值而不混合字母字符.我使用正则表达式str.match(/[0-9]/g)来获取所有数值,但对于上面的等式,结果应该是-99,5,99.

javascript regex string jquery match

5
推荐指数
2
解决办法
224
查看次数

Bootstrap 输入组换行格式

基本上我有一堆带有复选框和标签的行,占据了 2 列空间。有些标签比其他标签更长,因此当您调整浏览器大小或在移动设备上查看时,具有较长标签的列将折叠到第二行,而较短的标签则保留在复选框旁边。看起来像废话。

HTML:

<div class = "row">
<div class="col-lg-2"> 
   <div class="input-group">
   <input type="checkbox">
        Small Label
   </div>
</div>
    <div class="col-lg-2"> 
   <div class="input-group">
   <input type="checkbox">
        Big Label that collapses first
   </div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

有没有办法让其中一个倒塌,那么整排都倒塌?

更好的是拥有一个像图像一样工作的动态字体,并且根据需要放大和缩小,最多占据 100%,根本不会导致崩溃。我可以只使用图像,但我有很多这样的标签,为每个标签制作图像将花费很长时间。

html css twitter-bootstrap

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