小编Chr*_*ski的帖子

当用户在页面底部滚动时,Javascript/JQuery执行功能

在一个着名的新闻网站上(sry,不记得究竟是哪一个)我看到了一个非常酷的效果......当你在页面底部滚动时,一个新元素从浏览器视口的顶部向下滑动了很多社交媒体选项(推文,在Facebook上分享等).我想模仿一些类似的东西......事实上,如果我知道如何在用户靠近页面底部时触发一个功能,那么我真的想做很多事情......

所以,我的问题非常基本:当用户在动态大小的页面底部附近滚动时,如何触发一个函数?

javascript jquery

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

如何有效地存储/检索chrome.storage.sync中的数据?

因此,我正在编写一个扩展程序,以便让人们能够精确地保存网络上的图像颜色.它进展顺利,但现在我正在尝试概念化我将如何实际存储它们,并列出存储的项目.

据我所知,chrome.storage.sync()只允许对象.这意味着我必须做这样的事情:

{colors: [{colorName: 'white', colorHex: '#ffffff'}, {colorName: 'black', colorHex: '#000000'}]}
Run Code Online (Sandbox Code Playgroud)

这似乎非常低效,因为每次我想要从喜欢的列表中添加或减去颜色时,我将需要获取整个数组,更改我想要的一个项目,然后将数据存储回来.更不用说扫描一个颜色的数组,看它是否存在可能是一个大阵列非常密集.

最终,我希望能够做一些事情

 colors['#fff'].name = white;
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不可能.

我很想听听其他一些想法,了解实现这一目标的最佳方法.

local-storage google-chrome-extension

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

使用onmousedown获取您刚才所拥有的元素的ID?

这可能吗?

我正在尝试为onmousedown编写一个函数,该函数将返回您刚刚单击的元素的ID,以便稍后在另一个div中重新创建该元素时使用.

javascript onmousedown

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

听多个keydowns

我试图让用户使用箭头键移动页面上的元素.到目前为止,我的运动是上/下/左/右,但不是对角线(同时按下两个箭头键).

我的听众看起来像这样:

addEventListener('keydown', function(e){
    move = false;
    x = false;
    y = false;
    var keycode;
    if (window.event) keycode = window.event.keyCode;
    else if (e) keycode = e.which;
    switch(keycode){
        case 37:
            move = true;
            x = 'negative';
            //prevent page scroll
            e.preventDefault()
        break;
        case 38:
            move = true;
            y = 'negative'
            //prevent page scroll
            e.preventDefault()
        break;
        case 39:
            move = true;
            x = 'positive'
            //prevent page scroll
            e.preventDefault()
        break;
        case 40:
            move = true;
            y = 'positive'
            //prevent page scroll
            e.preventDefault()
        break;
    } …
Run Code Online (Sandbox Code Playgroud)

javascript keydown addeventlistener

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

如何以最小的系统命中率处理您的APP的成就/徽章/奖励?

我喜欢我正在设计的网站的徽章和成就的概念.它们已经被证明可以提高消费/使用率,我认为这可能是我想要开发的应用程序的一大动力.

从高层次来看,我可以想到3种方法.

检查满足cron工作要求的成员:这对我来说似乎不是一个好主意,因为成员数量增加,cron工作需要更长时间才能完成.

每次动作完成后,可能满足徽章的要求,检查是否任何徽章应该颁给:这似乎是一个好办法做到这一点,但似乎我可能砸向服务器上的徽章连续检查已被授予或用户可能甚至不接近.

每次用户完成可以获得徽章的操作时,请检查他们是否已经拥有徽章,然后检查它们是否符合要求:这似乎也没问题,但如果我将用户存储为对象,则看起来像它可能会变得非常大,或者我可能最终会非常难以检查数据库以检查成就.

我有什么选择吗?我对一种或多种方法的担忧是否被夸大了?

编辑: 这是一个比我想象的要少得多的问题,还是在一个糟糕的时刻问我?我有什么不清楚的地方吗?

achievements badge

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

mcrypt加密将一堆'%00'添加到字符串的结尾

使用OAuth并使用以下函数使用字符串加密密钥,我们称之为'foo'(实际上是OAuth令牌)

public function encrypt( $text )
{
    // add end of text delimiter
    $data = mcrypt_encrypt( MCRYPT_RIJNDAEL_128, $this->key, $text, MCRYPT_MODE_ECB, $this->iv );
    return base64_encode( $data );
}
Run Code Online (Sandbox Code Playgroud)

当我使用反函数解密它时,我最终得到:

功能:

    public function decrypt( $text )
    {
        $text = base64_decode( $text );
        return mcrypt_decrypt( MCRYPT_RIJNDAEL_128, $this->key, $text, MCRYPT_MODE_ECB, $this->iv );
    }
Run Code Online (Sandbox Code Playgroud)

结果:

foo%00%00%00%00%00%00%00%00%00%00%00%00%00%00

编辑:

再看一下,我意识到它实际上是对%00的URL编码,这意味着我的字符串以某种方式被空字符填充?所以我目前正在使用trim()来摆脱它们,但我想了解为什么会发生这种情况.

php encryption padding mcrypt

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

Chrome操作系统,通过Chrome扩展程序快速判断是否存在互联网连接?

我正在尝试编写一个扩展名,用于缓存页面内容以供离线阅读.如果用户在离线时激活扩展程序的弹出窗口,我想显示缓存的内容.目前,我在想我可以发出ajax请求并等待它是否失败,但是如果有一部分chrome API可以让我更快地完成这项工作,那将是理想的选择.

我做了一些谷歌搜索,没有遇到任何问题.

javascript google-chrome-os google-chrome-extension network-connection

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

确保所有标签都关闭php

我有一个<textarea>允许用户内容提交的地方.我想,让一对夫妇的标签,例如<b>,<i>,<blockquote>,和<del>.但是,由于内容将显示在页面中,我必须确保没有未关闭的标签.

我知道我可以使用strip_tags($textarea, '<b><i><blockquote><del>'),但是如何确保所有剩余的标签都正确关闭?

html php

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

如何在<input type ='file'>中隐藏文件位置?

可能重复:
如何隐藏Html文件上载中的文本字段

我正在设置一个AJAX图像上传器,允许用户选择文件,使用AJAX进行预览,然后单击提交按钮以保存他们的选择.

由于我的AJAX上传器的工作方式,即使在用户选择并正在预览图像之后,它也总是说"没有选择文件".如果用户想再试一次,我不想隐藏按钮.我知道我可以使用一些javascript在'选择文件'和'选择另一个'按钮或类似的东西之间切换,但我更喜欢只保留原始按钮,这样用户就不必点击一堆不同的纽扣.

编辑:我认为我的问题很明显,我想这不是因为我得到了亲密的选票......

html css input input-type-file

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

如何扩展 Gtk 标签以填充整个水平空间?

我正在尝试在对话框中插入文本标签,但是当我将对齐方式设置为 (X=0, Y=0.5) 并将换行设置为 True 时,文本不会填充整个水平空间。

\n\n

是一张图片

\n\n

这是Python中的示例代码:

\n\n
import gtk\n\nif __name__ == "__main__":\n\n    lbl = gtk.Label(\'Presione el bot\xc3\xb3n "Adelante" para iniciar la instalaci\xc3\xb3n del sistema. Despu\xc3\xa9s de este paso no podr\xc3\xa1 detener la instalaci\xc3\xb3n, as\xc3\xad que aseg\xc3\xbarese de que sus datos son correctos.\')\n    lbl.set_line_wrap(True)\n    lbl.set_alignment(0, 0.5)\n    lbl.set_justify(gtk.JUSTIFY_FILL)\n    lbl.show()\n\n    diag = gtk.Dialog()\n    diag.set_size_request(640, 480)\n    diag.vbox.pack_start(lbl)\n    diag.run()\n
Run Code Online (Sandbox Code Playgroud)\n

gtk label pygtk

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