如何避免Javascript嵌套链接块点击时同时打开父子链接?

有如下一个列表,我们希望当 点击链接当时候,跳转到链接的地址点击其上级灰色方框到时候,跳转到灰色方框指定到地址。 这里容易出现一个问题:我们点击内部的链接时,会同时打开灰色方框的链接 下面我们来解决这个问题。 上面列表的html代码如下: <style> .link-item{cursor: pointer; background: #ccc; padding: 30px 0; mar…

xpath中*、text()和node()区别

假设有这么一段html: <div class="post-content"> <h1>Title</h1> <p>Subtitle</p> <img src="a.jpg"> <div> <a href="example.html">Goto</a> </div> Bare text <br> <!-- this is html comment --> <p>Bottom</p> </div> 1 child::*  节点的所有子元素,如//div[@class="post-content…

xpath匹配符.*/及其组合的区别和作用

区别如下: 绝对和相对XPaths (/ vs .) / :绝对位置路径,从document root开始。. :相对位置路径,从当前节点(或称当前上下文环境)开始。 元素名和任何元素(ename vs *) /ename :选择名为ename的根元素,如/html/* :选择所有根元素./ename :选择当前节点下所有名为ename 的子元素。./* 或 * :选择当前节点下的所有子元素。 递…

Flask中集成Scrapy

如果只是在Flask中调用Scrapy爬虫,可能会遇到如下错误: ValueError: signal only works in main thread # 或者 twisted.internet.error.ReactorNotRestartable 解决的办法有几个。 1 使用python子进程(subproccess) 首先,确保目录结构类似如下: > tree -L 1 ├── dirbot ├── README.rst ├── scrapy.cfg ├── server.py └── setup.p…

Flutter十六进制颜色转换成颜色对象

十六进制颜色值格式一般如:#ff0000,以#开头,后面跟着6个十六进制字符。 而flutter中不能直接使用此类形式的颜色值,所以必须要转换为flutter颜色对象。 Color hexToColor(String s) { // 如果传入的十六进制颜色值不符合要求,返回默认值 if (s == null || s.length != 7 || int.tryParse(s.substring(1, 7), radix: 16) == null) {…

Dart异步async、await和Future的语法技巧

由于前面的HTTP请求用到了异步操作,不少小伙伴都被这个问题折了下腰,今天总结分享下实战成果。Dart是一个单线程的语言,遇到有延迟的运算(比如IO操作、延时执行)时,线程中按顺序执行的运算就会阻塞,用户就会感觉到卡顿,于是通常用异步处理来解决这个问题。当遇到有需要延迟的运算(async)时,将其放入到延迟运算的队列(await…

yaf框架单元测试

代码目录结构: 项目目录 application 控制器和视图目录 configs ini配置文件目录 library Dao、Model、Service层目录 public 入口文件目录 tests 单元测试目录 api 测试用例目录 bootstrap.php 单元测试初始化文件 vendor 第三方库(composer) composer.json composer依赖文件 phpunit.xml 单元测试配置文件 在yaf中做单元测试,主要…

Jetbrain IDE(PHPStom,Pycharm,Android Sudio,Idea...)高效开发远程程序

背景:公司1台配置比较弱的笔记本(8G内存)+1台性能良好的台式机(16G内存)。 原本笔记本除了安装PHPStom、Pycharm、Android Sudio、Idea…,还安装了docker,运行开发程序。 后果就是,每当开两个IDE,笔记本不是卡死就是死机,内存动不动就100%。 连续几次,实在受不了,就有了把docker和代码移到台式机的想法。 可是代码在IDE在笔…

容器内执行docker命令

大部分情况下,Docker通过主机(host)来查看和控制容器, 其实还有其他的方式,API和容器内部,这里我们主要讲在容器内部执行docker命令。 要实现这样的操作,有几个条件: 主机的/var/run/docker.sock文件挂载到容器中主机的/usr/bin/docker文件挂载到容器中容器中的用户有docker执行权限(默认情况下只有root用户和docker用户组有这…

Ubuntu通过samba挂载Windows目录

步骤如下: 1 安装CIFS Utils包 sudo apt-get install cifs-utils 2 创建挂载点 sudo mkdir /mnt/local_share 3 挂载(单次有效) sudo mount -t cifs //192.168.1.11/public /mnt/local_share # 不需用户密码 sudo mount -t cifs //192.168.1.11/public /mnt/local_share -o user=john # 自动用户名,手动输入密码 sudo mount.cifs //1…