小编alv*_*zoo的帖子

"onwheel"和"onscroll"事件之间有什么区别?

当我尝试更改默认滚动条属性时,我发现重写回调函数scroll()onscroll事件不方便,相反,我应该为"onwheel"事件重写一个回调函数.

那么onwheel和之间的区别是onscroll什么呢?我认为onwheel浏览器的默认处理程序会自动触发onscroll移动滚动条的功能,这就是为什么preventDefaultonwheel回调中会阻止滚动条移动的原因.我对吗?谁有更好,更具体的解释?

javascript browser jquery

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

python RE findall()返回值是一个完整的字符串

我正在编写一个爬虫来获取html文件的某些部分.但我无法弄清楚如何使用re.findall().

这是一个例子,当我想在文件中找到所有...部分时,我可能会写这样的东西:

re.findall("<div>.*\</div>", result_page)
Run Code Online (Sandbox Code Playgroud)

如果result_page是一个字符串"<div> </div> <div> </div>",结果将是

['<div> </div> <div> </div>']
Run Code Online (Sandbox Code Playgroud)

只有整个字符串.这不是我想要的,我期待两个div分开.我该怎么办?

html python regex web-crawler

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

如何在Python中实现守护进程?

我正在编写一个小程序,它有一个心跳过程和一个回声过程.我用多处理库实现了这个,但它似乎不起作用.

from multiprocessing import Process
import os
import time

def ticking():
    while True:
        time.sleep(1)
        print 'ticking'

def echo():
    while True:
        a = raw_input('please type something')
        print 'echo: ' + a

if __name__ == '__main__':
    p = Process(target=ticking, args=())
    p.start()
    p.join()

    p = Process(target=echo, args=())
    p.start()
    p.join()
Run Code Online (Sandbox Code Playgroud)

python daemon multiprocessing

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

malloc的奇怪行为

我正在尝试动态初始化队列.这是我的功能.

typedef struct{
    int size;
    int max_size;
    short * eles;
} queue;

void dump_queue(queue *q)
{
    //print a bunch of information
}

void init_queue(queue *q, int max_size)
{
    q = (queue)malloc(sizeof(queue));
    q->size = 0;
    q->max_size = max_size;
    q->eles = (short *)malloc(max_size * sizeof(short));
    int i;
    for(i = 0; i < max_size; i++)
        q->eles[i] = -1;
    dump_queue(q);
}
Run Code Online (Sandbox Code Playgroud)

task_queue是一个全局变量.例程的结构如下:(不是确切的代码)

//globally defined here but not initialized 
queue * task_queue;
void init_scheduler()
{
    init_queue(task_queue, 32);

    dump_queue(task_queue);
    //other staff
}
Run Code Online (Sandbox Code Playgroud)

注意有两个dump_queue,一个是init_queue(),另一个是init_queue之后.由于task_queue是malloced,我希望dump_queue的两次调用应该给出相同的结果.但第二个实际上报告了一个SIG_FAULT.

在我检查之后,在dump_queue的第二次调用中,task_queue实际上是NULL.这是为什么?

c linux malloc struct system

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