小编yuv*_*uvi的帖子

仅使用jQuery的Firefox错误 - handleObj.handler.apply不是一个函数

我正在开发一个扩展Dan Grossman的测距仪的插件.这是我的回购.请原谅我的杂乱代码,这仍然是一项正在进行中的工作.我的问题是Firefox无法识别点击输入.这是相关的:

this.container.find('.ranges')
    .on('click', 
        '.daterangepicker_start_input, .daterangepicker_end_input',   
        $.proxy(this.focusInput, this));
Run Code Online (Sandbox Code Playgroud)

现在函数focusInput本身并不重要,真的,因为我console.log在它的顶部添加了一个简单的,很明显它根本没有运行(添加断点也没有帮助).

我认为这可能是因为我正在使用禁用输入,但更改它没有帮助(并且它不应该是一个问题,因为事件是通过父元素捕获的).

我从Firefox控制台获得的错误消息是:

TypeError: handleObj.handler.apply is not a function       jquery-1.11.0.js:4995
TypeError: handleObj.handler.apply is not a function       jquery-1.11.0.js:4624
Run Code Online (Sandbox Code Playgroud)

这告诉我问题是jQuery(我很难相信).我猜我做错了导致jQuery出错,但是由于Chrome没有抱怨,我很难跟踪到底哪里出错了.

我很想得到一些帮助.提前致谢!

更新

我在github上更新了代码.现在点击不仅仅适用于最初隐藏的元素(呃...没有意义),但更重要的是 - 我根本没有收到任何错误.所以我被卡住了.我不知道FF的问题是什么.即使是Internet Explorer也没有抱怨 - 这到底是什么?

firefox jquery

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

Bootstrap工具 - 提示未关闭页面在IE-8中滚动到IE-11

我在IE-8到IE-11中遇到了这个问题.

  1. 将鼠标悬停在标签(等)上并启用工具提示
  2. 现在滚动页面鼠标滚动而不移动鼠标.
  3. 注意:工具提示未关闭(IE-8到IE-11).

我有所有带有工具提示的标签,当我向下滚动并使用工具提示到达第二个标签时,它仍然显示以前的标签工具提示而不是新的.这个问题很小,但我正在努力解决以前修复过这个问题的问题吗?它在Firefox,Chrome和其他常见浏览器中运行良好.

也发布在GitHub上.

问题也可以在bootstrap网站上观察到.

html css jquery internet-explorer twitter-bootstrap-3

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

在NoSQL中进行极其简单的聊天会有什么好的数据库架构?

SQL中的基本模式有一个很好的现有答案.

我能理解,它非常简单.我们有一个用户表,一个聊天表和一个chat_line表(在一个理智的世界中称为消息).

我对NoSQL很新,我的思维仍然习惯于"正常"的SQL方案,而我正试图理解NoSQL中聊天应用程序的正确架构(如mongo或whathaveyou).

我说的是最简单的形式,在一个用户与另一个用户之间,没什么特别的 - 没有文件消息,没有图片,没有群聊.只是文字.

chat nosql

6
推荐指数
2
解决办法
446
查看次数

这些(几乎相同)条件之间的效率差异是什么

我被朋友挑战,在python中构建一个高效的Fibonacci函数.所以我开始测试不同的递归方式(我没有很高的数学技能来考虑一个复杂的算法,请不要告诉我一个有效的Fibonacci函数,这不是问题).

然后我试了两种不同的解决方案

解决方案1:

def fibo(n):
    if n > 1:
        return fibo(n-1)+fibo(n-2)
    return 1
Run Code Online (Sandbox Code Playgroud)

解决方案2:

def fibo(n):
    if n < 1:
        return 1
    return fibo(n-1)+fibo(n-2)
Run Code Online (Sandbox Code Playgroud)

然后,我为每个人跑了这个:

res = map(fibo, range(35))
print res
Run Code Online (Sandbox Code Playgroud)

现在,我怀疑可能存在效率差异(我不能确切地说为什么).但我预计会有一点不同.结果彻底击败了我.差异很大.第一个花了7.5秒,而第二个花费了惊人的12.7(几乎是两次!).

任何人都可以向我解释原因吗?那些基本上不一样吗?

python

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

c3 chart.load有多个图表

我正在使用c3.js和c3.css在一个页面上制作几个图表.我有多个图表,并希望每60秒更新一次数据,因此我使用设置间隔,获取更新的数据,然后将其加载到图表中,但是,它将所有数据放在最近制作的图表中.我试图将绑定添加到数据,以便它转到正确的图形,但它仍然加载到底部图形.我怎样才能解决这个问题?

...
<div id='chart1'></div>
<div id='chart2'></div>
...
function update()//this function collects the new data in arrays cols and xrows
...
setInterval(function(){
  update();
  chart.unload();
  chart.load({bindto:'#chart1',columns:cols, xs:xrows});
},3000);
Run Code Online (Sandbox Code Playgroud)

javascript css charts graph c3.js

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

Django FileField存储选项

我有这个型号:

class UserProfile(models.Model):
    #..........
    photo = models.ImageField(upload_to = get_upload_file_name,
                              storage = OverwriteStorage(),
                              blank = True, null = True,
                              height_field = 'photo_height',
                              width_field = 'photo_width')
Run Code Online (Sandbox Code Playgroud)

这是我的存储功能:

class OverwriteStorage(FileSystemStorage):
    def _save(self, name, content):
        self.delete(r'.*')
        return super(OverwriteStorage, self)._save(name, content)

    def get_available_name(self, name):
        return name
Run Code Online (Sandbox Code Playgroud)

我该怎么做以下两件事:

  1. 每当用户上传文件(即图像)时,我想删除旧文件,无论名称是否相同.我试图删除任何与上述正则表达式匹配的内容,但这不起作用.

  2. 如果用户上传名为"me.jpg"的图像,我想以不同的方式重命名,具体取决于用户的用户名.所以我会做一些像这样做的事情return super(OverwriteStorage, self)._save(SOMETHING_ELSE_HERE, content)?我可以将其他参数传递给OverwriteStorage函数吗?

还有第三个问题:我为这个表单创建了一个ModelForm.因此用户可以上传图像.因此,当有人按下"选择文件"时,会弹出一个窗口窗口以浏览和选择照片.我怎么才能在这里显示某些文件?(例如,只有.jpg和.jpeg文件)

谢谢!

编辑:get_upload_file_name功能

def get_upload_file_name(instance, filename):
    return "%s/%s/profile_photo/%s" % (instance.user.username[0].lower(), instance.user.username, filename)
Run Code Online (Sandbox Code Playgroud)

编辑2:我已经包含了我的models.py

import datetime
import os
import urllib2, urlparse
import re

from django.db import models
from …
Run Code Online (Sandbox Code Playgroud)

python django django-models filefield imagefield

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

使用jQuery代理时保留两个`this`引用

我正在编写一个jQuery插件,$.proxy在将事件附加到函数时,我会使用它来保持上下文.像这样的东西:

function myPlugin(element) {
    this.element = $(element);
}

$.extend(myPlugin.prototype, {
    init: function() {
        this.btns = this.element.find('.control-btns');
        this.register_events();
    },

    register_events: function() {
        this.btns
            .off('click.myplugin')
            .on('click.myplugin', $.proxy(this.foo, this));                   
    },

    foo: function(e) {
        this.bar();
        var btnClicked = $(e.target);
    },

    bar: function() {
        // some code here
    }
});
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,在运行时foo我需要有正确的上下文this才能调用该bar函数(这只是为了示例,我做的不仅仅是调用一个特定的函数).

但是,我还需要另一个 this - 表示单击按钮的那个.我认为e.target已经足够了,但事实证明它捕获了被点击的东西,而不是带有事件监听器的元素 - 即如果我的按钮有一些内部区域(比如一个跨度),点击它会传播,但随后e.target会指向对<span>代替<button>.我做了一个小型演示,展示了这个问题.

我怎样才能传递正确的this背景,而不会丢失我本来会得到的那个?

javascript jquery this

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

如果登录被拒绝,如何代表用户执行命令

我需要代表tomcat用户运行tomcat .但是/etc/passwd我有以下几行:

tomcat:x:505:506::/usr/share/tomcat:/bin/nologin
Run Code Online (Sandbox Code Playgroud)

所以当我尝试这样做时: sudo su tomcat ./bin/startup.sh

它抱怨: su: /bin/nologin: No such file or directory

如何使用适当的权限执行命令?

提前致谢!

PS我正在尝试对配置进行逆向工程并进行生产.所以我必须要精致......

linux shell tomcat login

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

使用 unicode_range 仅排除数字

我正在使用自定义字体并通过@font-face加载它。文本看起来不错,但数字看起来很奇怪(仅在 chrome-windows 上,这是一个众所周知的错误。是的,我尝试使用 chrome 的 svg 格式,它解决了数字问题,但搞乱了文本)。我决定将自己的字体限制为仅[a-z][A-Z],并使用此生成器得到:

unicode-range: U+0041-U+005a, U+0061-U+007a;
Run Code Online (Sandbox Code Playgroud)

而且它似乎...不起作用。数字仍然使用该字体显示。如何找到合适的范围来使用\其他解决方案?我希望有一个通用的解决方案,例如,如果我也想限制未来的字体。

提前致谢!

Ps 当我谈论这个主题时 - 我假设没有办法加载相同的字体两次 - 将文件用于.svg数字和.otf文本,对吧?因为如果可能的话那就太棒了。

css unicode font-face unicode-range

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

如果id具有这些"{}"括号,则无法访问该元素

我有几个文本框ID分别为A_NAME{0},A_NAME{1},A_NAME{2}.我无法访问这些文本框值.

我使用下面的命令来访问它们.

$('#A_NAME{0}').val();
Run Code Online (Sandbox Code Playgroud)

有人可以请帮助.

jquery

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