小编Ben*_*oft的帖子

如何使用指针事件仅响应滚动事件?

是否可以将指针事件设置为仅对触摸板上的滚动或拖动作出反应?我有一个div'在路上'用于滚动复杂的html排列*我想知道我是否可以限制指针事件只对滚动/鼠标滚轮动作作出反应.

我很想知道我是否正确理解这一点.如果pointer-events:none;意味着所有事件都无效,我如何杀死所有事件但保留一个活动?

我已经设置了一个比它适合的框大的HTML区域,但是如果我要显示滚动条,由于弹出(position:top)元素,它看起来会比它应该更高.这个区域仍然需要滚动才能实现这一点我已经使用jQuery使我的'框滚动'跟随div中的一个不可见的div:

<div id="scrollcontrol"style="overflow-y:auto;overflow-x:hidden;position:absolute;
   top:12px;left:180px;width:40px;height:1300px;">
   <div id="catscrollpos"style="position:absolute;
    top:0px;width:200px;height:2250px;">
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

脚本

$('#scrollcontrol').scroll(function({
  $('#rangetable').css({
  'top':$('#catscrollpos').position().top+'px'
  });
});
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery scroll

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

socket.io加入/离开

我在socket.io wiki上寻找使用房间,但是加入和离开都不起作用,我想知道他们是否可能改变了一些但没有机会更新维基?

socket.join("room-"+data.meid);
socket.leave("room-"+meid);
Run Code Online (Sandbox Code Playgroud)

因为我得到控制台错误:

Uncaught TypeError: Object #<SocketNamespace> has no method 'leave' 
Uncaught TypeError: Object #<SocketNamespace> has no method 'join' 
Run Code Online (Sandbox Code Playgroud)

socket.io

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

如何在phantomjs中设置代理

这个https://www.npmjs.com/package/phantom#functionality-details页面说:

您还可以通过为phantom.create()指定其他参数来将命令行开关传递给phantomjs进程,例如:

phantom.create '--load-images=no', '--local-to-remote-url-access=yes', (page) ->
Run Code Online (Sandbox Code Playgroud)

或者通过在options*对象中指定它们:

phantom.create {parameters: {'load-images': 'no', 'local-to-remote-url-access': 'yes'}}, (page) ->
Run Code Online (Sandbox Code Playgroud)

这些示例仅在咖啡脚本中,并且它们暗示了create函数可以采用的

create('string',function)
Run Code Online (Sandbox Code Playgroud)

要么

create([object object],function)
Run Code Online (Sandbox Code Playgroud)

但真正的第一个参数是功能!

我真的很想尝试http://phantomjs.org/api/command-line.html我可能有错误的想法,但对我来说它看起来像是可以在创建函数中使用(就在你创建createPage之前),我我错了?

我尝试了几件事,最合乎逻辑的是:

var phantom = require('phantom');
phantom.create(function(browser){
    browser.createPage(function(page){
        page.open('http://example.com/req.php', function() {

            });},{parameters:{'proxy':'98.239.198.83:21320'}});});
Run Code Online (Sandbox Code Playgroud)

所以页面打开了.我知道这是因为我正在使req.php将$ _SERVER对象保存到txt pad但是,REMOTE_ADDR和REMOTE_PORT标头不是我设置的代理中的标头.它们没有效果.我也尝试过:

{options:{'proxy':'98.239.198.83:21320'}}
Run Code Online (Sandbox Code Playgroud)

当文档调用该对象时,选项* object*见上文^

'--proxy=98.239.198.83:21320'
Run Code Online (Sandbox Code Playgroud)

我还通过幻像模块挖掘了一下创建函数.它不是用js写的,我至少看不到它.它必须是C++.看起来此模块已更新,但模块内部的示例看起来像旧代码.

我该怎么做呢?

编辑:

var phantom = require('phantom');
phantom.create(function(browser){
    browser.createPage(function(page){

    browser.setProxy('98.239.198.83','21320','http', null, null, function(){

    page.open(
        'http://example.com/req.php', function() {

         });});});});
Run Code Online (Sandbox Code Playgroud)

这不会产生错误,页面会被删除但代理会被忽略.

proxy node.js phantomjs

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

^ a-zA-Z0-9除了空格?

我试图在段落中找到所有不是abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789而不是空格//gi

/[^a-zA-Z0-9]|[^ ]/gi
Run Code Online (Sandbox Code Playgroud)

以上不起作用!

regex spaces

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

Android Stock Browser是否支持WebSocket?

使用https://github.com/einaros/ws

服务器:

var WebSocketServer=require('ws').Server,wss=new WebSocketServer({port:8004});

wss.on('connection',function(s) {
    s.on('message',function(_){console.log('received: '+_);});
});
Run Code Online (Sandbox Code Playgroud)

客户:

var s=new WebSocket('ws://mysite.com:8004');
//android default browser dies here <---------------?       
s.onopen=function(){
    $('body').css({'background':'green'});
    s.send('hi');
    };
Run Code Online (Sandbox Code Playgroud)

我不得不问为什么android默认浏览器没有打开连接?

我在默认的android浏览器上访问www.websocket.org/echo.html,它说这个浏览器支持websocket.那有什么问题?

这个简单的代码适用于iphone safari,windows chrome,android mobile chrome没问题.

在android默认浏览器上我也可以用console.dir(window.WebSocket); 它显示WebSocket对象与其他浏览器没有什么不同.

如果有人知道原因,请告诉我.

谢谢


UPDATE

if (!window.WebSocket && window.MozWebSocket) {
    window.WebSocket = window.MozWebSocket;
    alert('MozWebSocket');
}
else if (!window.WebSocket) {
    alert("WebSocket not supported by this browser");
}
else{
    alert('wtf!? '+window.WebSocket);
}
Run Code Online (Sandbox Code Playgroud)

这给了我一个控制台日志:

wtf!? function WebSocket(){[native code]}
Run Code Online (Sandbox Code Playgroud)

javascript android websocket

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

现在开始实施Google钱包还为时尚早吗?

Google电子钱包应用内付款,https://developers.google.com/in-app-payments/,开发人员文档和工具目前处于最佳状态,不完整和/或缺乏相关信息.我觉得我必须写下这篇文章,希望他们注意并听取我们的关注并改进这一点.另外因为目前关于这个新支付系统的开发者信息不多,我希望这会产生积极的活动.

支持文档指向https://groups.google.com/group/in-app-payments/topics上非常安静的论坛.理想情况下,它可以指向这里存在的东西!;)

服务器端示例仅部分记录,方向建议使用大约五个或六个不同库中的一个,但方向完全在那里结束.

一个库链接指向用Python编写的GitHub存储库,显然,您必须以某种方式重写其中一个主文件才能使用.Google Wallet团队在文档中的任何位置都没有记录这一点.同样非常奇怪的是,他们会选择只编写一小部分PHP教程,顺便说一句,这是一种非常流行,熟悉且超高杠杆的语言.相反,当页面上的第一个示例https://developers.google.com/in-app-payments/docs/tutorial用Ruby编写时,他们在Python中编写了一个主要示例...

关于文档的另一个令人惊讶的缺乏质量的是页面,其中列出了调试时可能遇到的各种错误代码.它真的很神奇,它不见了.

错误可能看起来像这样:哦,哦.有一个问题.由于技术问题,我们无法完成您的购买.以下问题的详细信息:很遗憾,我们无法通过商家的服务器确认您的购买.您的订单已被取消.如果此问题仍然存在,请与商家联系.

此外,没有任何关于这些错误的文章:

Uh oh. There was a problem. 
We couldn't start your purchase because of a technical issue. 
Details of the problem below: 
Looks like there is an error in the setup for your purchase. Please 
contact the merchant with this error message: Expected 3 components in 
jwt: W29iamVjdCBPYmplY3Rd
Run Code Online (Sandbox Code Playgroud)

他们都没有表现出任何专业期望和/或确定的信息来帮助任何人.

更进一步,生产JWT的工具被打破:

http://developers.google.com/in-app-payments/docs/jwtdecoder

The decoder decodes the JWT header as this: 
    {"alg":"HS256","typ":"JWT"} 
Run Code Online (Sandbox Code Playgroud)

https://checkout.google.com/customer/gadget/inapp/demo.html

The encoder …
Run Code Online (Sandbox Code Playgroud)

api web-applications in-app-purchase jwt android-pay

7
推荐指数
0
解决办法
4354
查看次数

如何在幻像模块中设置用户代理字符串?

var phantom = require('phantom');
console.dir(phantom);
phantom.create(function(browser){
    browser.createPage(function(page){
        page.customHeaders={
            "HTTP_USER_AGENT": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36",
            };
        console.dir(page.settings);
        //undefined
        page.settings={};
        page.settings.userAgent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36';
        page.settings.HTTP_USER_AGENT = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36';
        console.dir(page.settings);
        page.open('http://example.com/req.php', function() {
            setTimeout(function() {
                var output = page.evaluate(function() {
                    return document;
                    });
                console.dir(output);
                //undefined
                }, 1000);
             });});});
Run Code Online (Sandbox Code Playgroud)

当我使用phantomjs时,我尝试使用三种不同的方式为userAgent设置标头但是当我访问页面并将PHP $ _SERVER对象保存到txt pad时我仍然看到PhantomJS

HTTP_USER_AGENT: Mozilla/5.0 (Unknown; Linux x86_64) AppleWebKit/538.1 (KHTML, like Gecko) PhantomJS/2.0.1-development …
Run Code Online (Sandbox Code Playgroud)

node.js phantomjs

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

显然,一些非标准字符被视为常规字符

我使用看似非标准但可以使用的字符进行故意错误:

var ?={};
?.causeError()

Uncaught TypeError: è.causeError is not a function
Run Code Online (Sandbox Code Playgroud)

显然ᛨ字符是è字符的一个版本

(utf-8普通文本字符a,b,c是文本)

VS

(非文本☎,®,෴,%)

è=== http://unicode-table.com/en/00E8/

Encoding      hex             dec (bytes)    dec            binary
UTF-8         C3 A8           195 168        50088          11000011 10101000
UTF-16BE      00 E8           0 232          232            00000000 11101000
UTF-16LE      E8 00           232 0          59392          11101000 00000000
UTF-32BE      00 00 00 E8     0 0 0 232      232            00000000 00000000 00000000 11101000
UTF-32LE      E8 00 00 00     232 0 0 0      3892314112     11101000 00000000 00000000 00000000
Run Code Online (Sandbox Code Playgroud)

ᛨ=== http://unicode-table.com/en/16E8/

Encoding      hex            dec …
Run Code Online (Sandbox Code Playgroud)

javascript text utf-8

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

来自base64的sendgrid multipart/alternative image

我无法让sendgrid(使用node.js)在html中发送带有嵌入式base64图像的电子邮件.我觉得我很亲密......

var base64img='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQgAAAFXCAYAAABeLtDdAAAgAElEQVR4Xu19CXhURdb2ISsJgSQ';//shortened version

sendgrid.send({
    to      : 'address1@gmail.com',
    from    : 'address2@gmail.com',
    subject : 'email with image from base64 data',
    headers:{
      'Content-Type':
      'multipart/alternative; boundary="imagebase64"'+
      '--imagebase64'+
      'Content-Type: image/png; name="base64.png"'+
      'Content-Disposition: inline; filename="base64.png"'+
      'Content-Transfer-Encoding: base64'+
      'Content-ID: <0123456789>'+
      'Content-Location: base64.png'+
      base64img+
      '--imagebase64'
      },
    html    : '<img src="cid:0123456789"/>'
    });
Run Code Online (Sandbox Code Playgroud)

有人可以提供帮助,因为我没有找到关于sendgrid文档或谷歌的示例

email-headers sendgrid

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

如何使用gitbash登录到我的仓库?

我已经将自己添加到git bash程序中,但是在Google上找不到如何登录?

$ git config --global user.name "myname"
$ git config --global user.email myemail@example.com
Run Code Online (Sandbox Code Playgroud)

github

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