我无法找到我想要完成的解决方案.我正在尝试使用JS(或其他库)来实现它,以便当用户在鼠标滚轮上向下滚动时,页面的滚动方式与通常情况相反.
基本上,我希望首先看到页面底部,当用户滚动时,我希望屏幕顶部进入视图.我能找到的唯一例子是http://conduit.com/的右栏.
我已经设置了一个JSFiddle http://jsfiddle.net/5UUtV/,其中有一个示例来帮助可视化它.我知道这可能与某些事情有关:
window.scrolltop();
Run Code Online (Sandbox Code Playgroud)
但老实说,我不确定最好的办法.
我希望首先看到标有"1"的面板,其余部分在用户滚动时进入视图.
关于如何做到这一点的任何想法将不胜感激.
谢谢
我正在尝试使用Asyncio和aiohttp库发出一堆请求(~1000),但我遇到了一个我找不到太多信息的问题.
当我用10个网址运行这个代码时,它运行得很好.当我用100多个网址运行它时,它会中断并给我RuntimeError: Event loop is closed错误.
import asyncio
import aiohttp
@asyncio.coroutine
def get_status(url):
code = '000'
try:
res = yield from asyncio.wait_for(aiohttp.request('GET', url), 4)
code = res.status
res.close()
except Exception as e:
print(e)
print(code)
if __name__ == "__main__":
urls = ['https://google.com/'] * 100
coros = [asyncio.Task(get_status(url)) for url in urls]
loop = asyncio.get_event_loop()
loop.run_until_complete(asyncio.wait(coros))
loop.close()
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪可以在这里找到.
任何帮助或洞察都会非常感激,因为我现在已经敲了几个小时.显然,这表明事件循环已经关闭,应该仍然是开放的,但我不知道这是怎么可能的.
LimitedFifoQueue是一个结构体,它包装了 a 的功能VecDeque以限制它随时存储的项目数量:
use std::collections::{vec_deque, VecDeque};
use std::fmt;
use std;
#[derive(Debug)]
pub struct LimitedFifoQueue<T> {
size: usize,
store: VecDeque<T>,
}
impl<T> LimitedFifoQueue<T> where T: fmt::Display {
pub fn new(size: usize) -> LimitedFifoQueue<T> {
LimitedFifoQueue {
size: size,
store: VecDeque::with_capacity(size),
}
}
pub fn push(&mut self, elem: T) {
self.store.push_front(elem);
if self.store.len() > self.size {
self.store.pop_back();
}
}
pub fn clear(&mut self) {
self.store.clear();
}
}
Run Code Online (Sandbox Code Playgroud)
我已经实现了IntoIterator如下特征:
impl<T> IntoIterator for LimitedFifoQueue<T> where T: fmt::Display {
type …Run Code Online (Sandbox Code Playgroud)