- 运行autoreconf -fvi报错configure.ac:29: error: possibly undefined macro: AM_PROG_LIBTOOL
爱因斯坦小姐
linux
报错内容说明configure.ac文件中使用了AM_PROG_LIBTOOL,但autoreconf无法找到它。这是因为libtool没有正确的安装或者配置。首先安装libtool:sudoapt-getupdatesudoapt-getinstalllibtool在项目的根目录下初始化libtool:libtoolize接下来重新运行autoreconf-fvi,或许就没问题啦!
- vscode 插件开发 typescript部分报错 Object is possibly 'undefined'.
故事里故去
vscode
在tsconfig.js中:strict设置false状态{"compilerOptions":{"strict":false,//...}}
- three.js 鼠标点击获取模型对象
lucky_zouzou
javascript开发语言ecmascript
three.js创建模型后,想要实现点击模型获取模型对象触发相应事件。可以使用它提供的APITHREE.Raycaster()https://threejs.org/docs/index.html?q=Raycaster#api/en/core/Raycaster//监听点击事件window.addEventListener('click',(event)=>{event.preventDefau
- VUE3学习 第九章 webpack 构建Vue3项目、vue3性能优化、Vue3 Web Components、Vue3 响应式原理
Hyman-ya
vue3+ts+vite学习
一、webpack构建Vue3项目(纯手写不用cli)为什么要手写webpack不用cli(脑子有病)并不是其实是为了加深我们对webpack的了解方便以后灵活运用webpack的技术1.初始化项目结构(跟cli结构保持一致)创建publi文件夹下面创建index.html文件然后初始化一下!然后改一下title标签的内容名称,一般与项目名称一样即可创建src文件夹src文件夹下面创建App.vu
- TypeScript基础类型详解:与JavaScript的对比与核心价值
念九_ysl
typescriptjavascripttypescript前端
TypeScript作为JavaScript的超集,最大的特性是引入了静态类型系统。本文将基于TypeScript官网内容,解析其基础类型设计,并与ES/JavaScript进行对比,揭示类型系统的实际价值。一、基础类型全景图1.原生类型的强化JavaScript原生类型:boolean、number、string、undefined、null、symbol、bigintTypeScript完全保
- Word2Vec 模型 PyTorch 实现并复现论文中的数据集
Illusionna.
word2vecpytorch人工智能算法自然语言处理nlpmatplotlib
详细注解链接:https://www.orzzz.net/directory/codes/Word2Vec/index.html欢迎咨询!
- JavaScript中的主要知识点
C7211BA
javascriptokhttp开发语言
一、基础语法与数据类型变量声明使用var(函数作用域)、let(块级作用域)和const(常量)声明变量,理解变量提升与暂时性死区。数据类型分为基本类型(Undefined、Null、Boolean、Number、String、Symbol、BigInt)和引用类型(Object、Array、Function)。注意类型转换规则(如==与===的区别)。运算符与控制流程包括算术、比较、逻辑运算符,
- 循环链表 - 使用JavaScript封装
幸运小圣
数据结构和算法链表javascript数据结构
我学习了一生,现在我还在学习,而将来,只要我还有精力,我还要学习下去。”——别林斯基目录循环链表:封装循环链表-js:应用场景:循环链表:循环链表和链表之间唯一的区别在于,最后一个元素指向下一个元素的指针不是引用undefined,而是指向第一个元素head。图为千锋教育所截,侵权联系删除。封装循环链表-js:这里封装的循环链表还是继承了之前写的单链表。。。classNode{constructo
- Django+Vue创建项目前后端分离
我就是我是好孩子啊
djangovue.jspython
转载掘金文章详细介绍了如何搭建项目https://juejin.cn/post/7028812676230807582Django的TemplateView指向生成的前端dist文件即可.1、找到project目录的urls.py,使用通用视图创建最简单的模板控制器,访问『/』时直接返回index.html:fromdjango.conf.urlsimporturlfromdjango.views
- html5 iframe实现页面预览pdf
十年 lius
web前端html5
一个可以把上传文件的绝对地址拿到的方法://建立一个可存取到该file的urlfunctiongetObjectURL(file){varurl=null;//下面函数执行的效果是一样的,只是需要针对不同的浏览器执行不同的js函数而已if(window.createObjectURL!=undefined){//basicurl=window.createObjectURL(file);}else
- react useEffect详解
王富贵的记录
reactreact.js
useEffect详解useEffect使用时有以下4种情况1、不传递useEffect不传递第二个参数会导致每次渲染都会运行useEffect。然后,当它运行时,它获取数据并更新状态。然后,一旦状态更新,组件将重新呈现,这将再次触发useEffect,这就是问题所在。useEffect(()=>{undefinedconsole.log(props.number)setNumber(props.
- Undefined 与 Null:究竟有何不同?
卓有成效的程序员
前端javascriptvue.js
想象一下,你正在参加一个聚会的组织工作。你负责准备一份名单,列出将要带来饮料和食物的人。现在,考虑以下两种情况:张三-你在名单上写下了张三的名字,但你还没有问他能带什么。在这种情况下,张三的贡献是“未定义(undefined)”,因为你知道他会带点什么,但你不知道具体是什么。李四-你联系了李四,而李四告诉你她不打算带任何东西。因此,你在名单上特意标记李四将带来“无(null)”。在JavaScri
- Docker基础入门(三) - 构建Dockerfile详解
GODLIKENESS
Dockerdocker人工智能容器运维微服务
文章目录构建Dockerfile详解1.简介2.基本结构3.指令详解3.1FROM3.2MAINTAINER3.3LABEL3.4RUN3.5CMD3.6ENTRYPOINT3.7EXPOSE3.8ENV3.9ADD3.10COPY3.11VOLUME3.12WORKDIR3.13USER3.14ARG3.15ONBUILD3.16STOPSIGNAL3.17HEALTHCHECK3.18SHEL
- 手写精简版TinyHttpd项目(二)
Not_full
服务器c++websocket
在上一章中,我们基本完了socket通信的建立和消息的处理,那么这一章我们就来看如何生成一个静态的网页。1.新建网页首先我们再代码的同级目录下新建一个index.html文件(当然也可以自己选择一个路径)然后将如下的代码复制到新建的index.html中:Thisisatextareawithaborder.SubmitForm结果如下:2.显示静态网页。我们现在已经有了一个本地的网页,接下来我们
- js操作数组的常用方法
胡歌1
javascript开发语言ecmascript
1.遍历方法1.1forEach作用:遍历数组中的每个元素,并对每个元素执行回调函数。是否改变原数组:不会改变原数组。返回值:undefined。1.1.1基本用法constarr=[1,2,3];arr.forEach((item)=>console.log(item*2));//输出://2//4//6console.log(arr);//输出:[1,2,3](原数组未改变)1.1.2尝试修改
- UBUNTU 20.04 + ROS + yaml-cpp + eigen
aspirationmars
装机流程ubuntu
1.安装百度拼音输入法。**参考官方链接,不过问题是开机后可能出现internalerror。http://srf.baidu.com/site/guanwang_linux/index.html**安装google-pinyin,但是系统语言换成中文才能配置google-pinyin。https://blog.csdn.net/kan2016/article/details/105735645/
- VSCode 移除EmmyLua插件的红色波浪线提示
天涯过客TYGK
vscodeide编辑器
VSCode中安装插件EmmyLua,然后打开lua文件的时候,如果lua代码引用了C#脚本的变量,经常出现“undefinedglobalvariable:UnityEngineEmmyLua(undefined-global)”的红色波浪线提示,这个提示看着比较烦人,我们可以通关如下配置来隐藏这个提示在lua文件的根目录创建一个名字为.emmyrc.json的文件,文件内容如下,然后在查看代码
- Android NDK编译proto文件记录
丢丢来
C/C++githubandroidruntime
记录,通过AndroidNDK工具链编译,proto文件的成功过程。需要编译自己定义的proto文件,需要做以下准备:1、通过ndk编译后的protobuf的动态库;(静态库后面编译出现连接问题:ld.lld:error:undefinedsymbol:stderr,暂未解决)2、定义好的proto文件编译目录结构,并定义好Android.mk和App;1、protobuf的动态库准备Androi
- Python 用 Selenium & DataFrame 提取网页内表格数据
solosoft
pythonselenium
提取的数据导入DataFrame,方便后期处理frompandas.core.frameimportDataFramefromseleniumimportwebdriverdriver=webdriver.Edge();driver.get("http://data.eastmoney.com/hsgt/index.html")table_content=driver.find_element_b
- ts 快速基础回顾
ivanfor666
ts前端
constnum:number=1conststr:string='1'constbool:boolean=trueconstundef:undefined=undefinedconstnul:null=nullconstbig:bigint=9876543210987654321nconstsynbol:Symbol=Symbol()constobj:Object=num?str:bool?bi
- vue中在哪个生命周期中dom被渲染_Vue.js 组件的生命周期
丁晓斌
本文目录结构问题Vue组件的生命周期答案总共分为8个阶段创建前/后,载⼊前/后,更新前/后,销毁前/后创建前/后:在beforeCreate阶段,vue实例的挂载元素el和数据对象data都为undefined,还未初始化。在created阶段,vue实例的数据对象data有了,el还没有载⼊前/后:在beforeMount阶段,vue实例的$el和data都初始化了,但还是挂载之前为虚拟的dom
- vue中在哪个生命周期中dom被渲染_Vue生命周期说明
祁圆圆
人是生而自由的,但却无往不在枷锁之中。自以为是其他一切人的主人,反比其他一切人更是奴隶。——卢梭复制代码生命周期图生命周期钩子说明beforeCreate(初始化界面前)在实例初始化之后,数据观测(dataobserver)和event/watcher事件配置之前被调用。data和$el都没有初始化,全部为undefinedcreated(初始化界面后)实例已经创建完成之后被调用。在这一步,实例已
- vue-cli开启gzip打包报错TypeError: Cannot read property ‘tapPromise‘ of undefined-解决
JackieDYH
VueERRORtapPromisegzip打包报错vue-clivue
给项目增加gzip打包yarnaddcompression-webpack-plugin-D(默认安装的是7以上的最新版本)修改vue.config.jsconstCompressionWebpackPlugin=require('compression-webpack-plugin');configureWebpack:{plugins:[newCompressionWebpackPlugin(
- vue实例
LXY20230504
vue.js前端javascript
//vue应用通过createApp函数创建一个新的应用实例,相当于根组件import{createApp}from'vue'importAppfrom'./App.vue'//在一个vue项目当中,有且只有一个vue的实例对象constapp=createApp(App)//App:根组件//实例必须调用了.mount()方法后才会渲染出来。该方法接受一个“容器”参数//在index.html中
- 【C语言】解决初始化数组时报错“undefined reference to `memcpy‘”
玉米子禾
C语言c语言javascript开发语言
【C语言】解决初始化数组时报错“undefinedreferenceto`memcpy’”零、报错代码:charstart[]={0xd,0xa,0xb3,0xcc,0xd0,0xf2,0xd2,0xd1,0xc6,0xf4,0xb6,0xaf,0xa1,0xad,0xa1,0xad,0xd,0xa,0};报错:interface.o:Infunction`main':/home/yu/fs441
- CSS从入门到精通——基础知识
Ssaty.
编程csshtmlhtml5
第1关:初识CSS:丰富多彩的网页样式通过编写CSS给网页添加基本的样式,补全Begin至end中间的部分,选择index.html文件,设置其CSS样式为:修改h1标题的text-align为居中显示,字体大小为40px;p段落的颜色为灰色:grey,字体大小为18px。HelloWorldbody{text-align:center;}h1
- 1/30每日一题
转码的小石
服务器运维
从输入URL到页面展示到底发生了什么?1.输入URL与浏览器解析当你在浏览器地址栏输入URL并按下回车,浏览器首先会解析这个URL(统一资源定位符),比如https://www.example.com。浏览器会解析这个URL中的不同部分:协议(如:http或https):决定了数据传输的方式和安全性。域名(如:www.example.com):确定请求的目标服务器。路径(如:/index.html
- React之从0开始(2)
️○-
杂谈react.js前端前端框架
书接上回。我们介绍了index.html的基本结构。那么我就在想了,为啥必须得是index.html呢?我能不能换个名字?谁规定的运行React项目就要从index.html开始?好吧,应该是Facebook规定的。。。。。那没事了。反正结论就是不能改。如果硬要改,也不是不行,但是你得同时修改Vite或者其他构建工具的配置。然后我们还会发现,新建的一个项目里面有一个文件package.json。这
- UE4 3D Widget 不显示问题
sh15285118586
UEUE43Dwidget不显示
这是Epic公司官方讲解3DWidget案例:https://docs.unrealengine.com/latest/INT/Engine/UMG/HowTo/Create3DWidgets/index.html不现实情况一:将Actor拖到场景中,要按照Z轴旋转180度,正面朝向摄像机才显视。不现实情况二:所有步骤都安装官网做,也不是第一种情况,那么解决办法是,删除Saved和Intermed
- springboot在线票务预订平台(特麦网)设计与实现
pingfan_yu
SpringBoot实战案例计算机毕业设计实战案例springboot后端java
开发技术简介开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9浏览器:谷歌浏览器后台路径地址:localhost:8080/项目名称/admin/dist/index.html前台路径地址:loca
- 如何用ruby来写hadoop的mapreduce并生成jar包
wudixiaotie
mapreduce
ruby来写hadoop的mapreduce,我用的方法是rubydoop。怎么配置环境呢:
1.安装rvm:
不说了 网上有
2.安装ruby:
由于我以前是做ruby的,所以习惯性的先安装了ruby,起码调试起来比jruby快多了。
3.安装jruby:
rvm install jruby然后等待安
- java编程思想 -- 访问控制权限
百合不是茶
java访问控制权限单例模式
访问权限是java中一个比较中要的知识点,它规定者什么方法可以访问,什么不可以访问
一:包访问权限;
自定义包:
package com.wj.control;
//包
public class Demo {
//定义一个无参的方法
public void DemoPackage(){
System.out.println("调用
- [生物与医学]请审慎食用小龙虾
comsci
生物
现在的餐馆里面出售的小龙虾,有一些是在野外捕捉的,这些小龙虾身体里面可能带有某些病毒和细菌,人食用以后可能会导致一些疾病,严重的甚至会死亡.....
所以,参加聚餐的时候,最好不要点小龙虾...就吃养殖的猪肉,牛肉,羊肉和鱼,等动物蛋白质
- org.apache.jasper.JasperException: Unable to compile class for JSP:
商人shang
maven2.2jdk1.8
环境: jdk1.8 maven tomcat7-maven-plugin 2.0
原因: tomcat7-maven-plugin 2.0 不知吃 jdk 1.8,换成 tomcat7-maven-plugin 2.2就行,即
<plugin>
- 你的垃圾你处理掉了吗?GC
oloz
GC
前序:本人菜鸟,此文研究学习来自网络,各位牛牛多指教
1.垃圾收集算法的核心思想
Java语言建立了垃圾收集机制,用以跟踪正在使用的对象和发现并回收不再使用(引用)的对象。该机制可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。
垃圾收集算法的核心思想是:对虚拟机可用内存空间,即堆空间中的对象进行识别
- shiro 和 SESSSION
杨白白
shiro
shiro 在web项目里默认使用的是web容器提供的session,也就是说shiro使用的session是web容器产生的,并不是自己产生的,在用于非web环境时可用其他来源代替。在web工程启动的时候它就和容器绑定在了一起,这是通过web.xml里面的shiroFilter实现的。通过session.getSession()方法会在浏览器cokkice产生JESSIONID,当关闭浏览器,此
- 移动互联网终端 淘宝客如何实现盈利
小桔子
移動客戶端淘客淘寶App
2012年淘宝联盟平台为站长和淘宝客带来的分成收入突破30亿元,同比增长100%。而来自移动端的分成达1亿元,其中美丽说、蘑菇街、果库、口袋购物等App运营商分成近5000万元。 可以看出,虽然目前阶段PC端对于淘客而言仍旧是盈利的大头,但移动端已经呈现出爆发之势。而且这个势头将随着智能终端(手机,平板)的加速普及而更加迅猛
- wordpress小工具制作
aichenglong
wordpress小工具
wordpress 使用侧边栏的小工具,很方便调整页面结构
小工具的制作过程
1 在自己的主题文件中新建一个文件夹(如widget),在文件夹中创建一个php(AWP_posts-category.php)
小工具是一个类,想侧边栏一样,还得使用代码注册,他才可以再后台使用,基本的代码一层不变
<?php
class AWP_Post_Category extends WP_Wi
- JS微信分享
AILIKES
js
// 所有功能必须包含在 WeixinApi.ready 中进行
WeixinApi.ready(function(Api) {
// 微信分享的数据
var wxData = {
&nb
- 封装探讨
百合不是茶
JAVA面向对象 封装
//封装 属性 方法 将某些东西包装在一起,通过创建对象或使用静态的方法来调用,称为封装;封装其实就是有选择性地公开或隐藏某些信息,它解决了数据的安全性问题,增加代码的可读性和可维护性
在 Aname类中申明三个属性,将其封装在一个类中:通过对象来调用
例如 1:
//属性 将其设为私有
姓名 name 可以公开
- jquery radio/checkbox change事件不能触发的问题
bijian1013
JavaScriptjquery
我想让radio来控制当前我选择的是机动车还是特种车,如下所示:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"><
- AngularJS中安全性措施
bijian1013
JavaScriptAngularJS安全性XSRFJSON漏洞
在使用web应用中,安全性是应该首要考虑的一个问题。AngularJS提供了一些辅助机制,用来防护来自两个常见攻击方向的网络攻击。
一.JSON漏洞
当使用一个GET请求获取JSON数组信息的时候(尤其是当这一信息非常敏感,
- [Maven学习笔记九]Maven发布web项目
bit1129
maven
基于Maven的web项目的标准项目结构
user-project
user-core
user-service
user-web
src
- 【Hive七】Hive用户自定义聚合函数(UDAF)
bit1129
hive
用户自定义聚合函数,用户提供的多个入参通过聚合计算(求和、求最大值、求最小值)得到一个聚合计算结果的函数。
问题:UDF也可以提供输入多个参数然后输出一个结果的运算,比如加法运算add(3,5),add这个UDF需要实现UDF的evaluate方法,那么UDF和UDAF的实质分别究竟是什么?
Double evaluate(Double a, Double b)
- 通过 nginx-lua 给 Nginx 增加 OAuth 支持
ronin47
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGeek 在过去几年中取得了发展,我们已经积累了不少针对各种任务的不同管理接口。我们通常为新的展示需求创建新模块,比如我们自己的博客、图表等。我们还定期开发内部工具来处理诸如部署、可视化操作及事件处理等事务。在处理这些事务中,我们使用了几个不同的接口来认证:
&n
- 利用tomcat-redis-session-manager做session同步时自定义类对象属性保存不上的解决方法
bsr1983
session
在利用tomcat-redis-session-manager做session同步时,遇到了在session保存一个自定义对象时,修改该对象中的某个属性,session未进行序列化,属性没有被存储到redis中。 在 tomcat-redis-session-manager的github上有如下说明: Session Change Tracking
As noted in the &qu
- 《代码大全》表驱动法-Table Driven Approach-1
bylijinnan
java算法
关于Table Driven Approach的一篇非常好的文章:
http://www.codeproject.com/Articles/42732/Table-driven-Approach
package com.ljn.base;
import java.util.Random;
public class TableDriven {
public
- Sybase封锁原理
chicony
Sybase
昨天在操作Sybase IQ12.7时意外操作造成了数据库表锁定,不能删除被锁定表数据也不能往其中写入数据。由于着急往该表抽入数据,因此立马着手解决该表的解锁问题。 无奈此前没有接触过Sybase IQ12.7这套数据库产品,加之当时已属于下班时间无法求助于支持人员支持,因此只有借助搜索引擎强大的
- java异常处理机制
CrazyMizzz
java
java异常关键字有以下几个,分别为 try catch final throw throws
他们的定义分别为
try: Opening exception-handling statement.
catch: Captures the exception.
finally: Runs its code before terminating
- hive 数据插入DML语法汇总
daizj
hiveDML数据插入
Hive的数据插入DML语法汇总1、Loading files into tables语法:1) LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]解释:1)、上面命令执行环境为hive客户端环境下: hive>l
- 工厂设计模式
dcj3sjt126com
设计模式
使用设计模式是促进最佳实践和良好设计的好办法。设计模式可以提供针对常见的编程问题的灵活的解决方案。 工厂模式
工厂模式(Factory)允许你在代码执行时实例化对象。它之所以被称为工厂模式是因为它负责“生产”对象。工厂方法的参数是你要生成的对象对应的类名称。
Example #1 调用工厂方法(带参数)
<?phpclass Example{
- mysql字符串查找函数
dcj3sjt126com
mysql
FIND_IN_SET(str,strlist)
假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在1到 N 之间。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则 FIND_IN_SET() 函数被优化,使用比特计算。如果str不在strlist 或st
- jvm内存管理
easterfly
jvm
一、JVM堆内存的划分
分为年轻代和年老代。年轻代又分为三部分:一个eden,两个survivor。
工作过程是这样的:e区空间满了后,执行minor gc,存活下来的对象放入s0, 对s0仍会进行minor gc,存活下来的的对象放入s1中,对s1同样执行minor gc,依旧存活的对象就放入年老代中;
年老代满了之后会执行major gc,这个是stop the word模式,执行
- CentOS-6.3安装配置JDK-8
gengzg
centos
JAVA_HOME=/usr/java/jdk1.8.0_45
JRE_HOME=/usr/java/jdk1.8.0_45/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME
- 【转】关于web路径的获取方法
huangyc1210
Web路径
假定你的web application 名称为news,你在浏览器中输入请求路径: http://localhost:8080/news/main/list.jsp 则执行下面向行代码后打印出如下结果: 1、 System.out.println(request.getContextPath()); //可返回站点的根路径。也就是项
- php里获取第一个中文首字母并排序
远去的渡口
数据结构PHP
很久没来更新博客了,还是觉得工作需要多总结的好。今天来更新一个自己认为比较有成就的问题吧。 最近在做储值结算,需求里结算首页需要按门店的首字母A-Z排序。我的数据结构原本是这样的:
Array
(
[0] => Array
(
[sid] => 2885842
[recetcstoredpay] =&g
- java内部类
hm4123660
java内部类匿名内部类成员内部类方法内部类
在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号。内部类可以间接解决多继承问题,可以使用内部类继承一个类,外部类继承一个类,实现多继承。
&nb
- Caused by: java.lang.IncompatibleClassChangeError: class org.hibernate.cfg.Exten
zhb8015
maven pom.xml关于hibernate的配置和异常信息如下,查了好多资料,问题还是没有解决。只知道是包冲突,就是不知道是哪个包....遇到这个问题的分享下是怎么解决的。。
maven pom:
<dependency>
<groupId>org.hibernate</groupId>
<ar
- Spark 性能相关参数配置详解-任务调度篇
Stark_Summer
sparkcachecpu任务调度yarn
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化。
由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便
- css3滤镜
wangkeheng
htmlcss
经常看到一些网站的底部有一些灰色的图标,鼠标移入的时候会变亮,开始以为是js操作src或者bg呢,搜索了一下,发现了一个更好的方法:通过css3的滤镜方法。
html代码:
<a href='' class='icon'><img src='utv.jpg' /></a>
css代码:
.icon{-webkit-filter: graysc