网站性能检测评分
注:本网站页面html检测工具扫描网站中存在的基本问题,仅供参考。
帮别人开发网站
程序员必学:浏览器开发者工具 互联网视频课程
浏览器开发者工具到底是什么?
其实简单的说,浏览器开发者工具就是给专业的web应用和网站开发人员使用的工具,当然只要你有兴趣想要了解,只要你对这个世界充满这好奇,什么东西你都可以了解。
开发者工具到底有什么用?
它的作用在于,帮助开发人员对网页进行布局,比如HTML+CSS,帮助前端工程师更好的调试脚本(JavaScript、jQuery)之类的,还可以使用工具查看网页加载过程,获取网页请求(这个过程也叫做抓包),抓包是非常有意思的过程,而每一个浏览器厂商生产出来的浏览器都会有自己的杀手锏,也就是功能上的差别,那么这个时候你就找一个最适合自己的浏览器使用就可以,接下来就是介绍我常用的三个浏览器。
chrom浏览器打开-开发人员工具-方式如下:
手动打开开发者工具的方法
当然,也可使用快捷方式,最为简便:打开方式有两种:第一“按F12”,第二:shift+ctrl+i
开发人员工具的界面
下面,为大家介绍下几个功能的使用方法:
Elements
Elements工具像一把手术刀一样“解剖”了当前页面,我们看到的Elements页面一般像这样子:
图中标记为1的红色区块为页面HTML文件,HTML中的每个元素比如<body>、<p>都是一个DOM节点,所有的DOM节点组成了DOM树。我们完全可以把红色区块1当做是DOM树,把HTML元素标签看做DOM节点。
当我们在这里选中某一DOM对象时,网页中相应元素也会被阴影覆盖。我们可以对DOM对象进行修改,修改后结果会在页面实时显示出来。此外,还可以用 Command + f 搜索DOM树中指定的内容,或者是以HTML形式更改页面元素,如下图:
选中DOM对象之后右键即可以看到一些辅助的功能,如图中标记为2的区块所示:
Add Attribute: 在标签中增加新的属性;
Force Element State: 有时候我们为页面元素添加一些动态的样式,比如当鼠标悬停在元素上时的样式,这种动态样式很难调试。我们可以使用Force Element State强制元素状态,便于调试,如下图:
![图4. 强制元素状态][4]Edit as HTML: 以HTML形式更改页面元素;
Copy XPath: 复制XPath;
Delete Node: 删除DOM节点;
Break On: 设置DOM 断点。
图中被标记为3的蓝色区块显示当前标签的路径:从html开始一直到当前位置,我们单击路径中任何一个标签,即可以跳转到相应标签内容中去。
图中标记为4的蓝色区块实时显示当前选中标签的CSS样式、属性等,一共有以下5小部分:
Styles: 显示用户定义的样式,比如请求的default.css中的样式,和通过Javasript生成的样式,还有开发者工具添加的样式;
Computed: 显示开发者工具计算好的元素样式;
Event Listeners: 显示当前HTML DOM节点和其祖先节点的所有JavaScript事件监听器,这里的监听脚本可以来自Chrome的插件。可以点击右边小漏斗形状(filter)选择只显示当前节点的事件监听器。
DOM Breakpoints: 列出所有的DOM 断点;
Properties: 超级全面地列出当前选中内容的属性,不过基本很少用到。
实际应用中我们经常会用到Styles,如下图:
图中标记为1的+号为New style rule,可以为当前标签添加新的选择器,新建立的样式为inspector-stylesheet。此外,也可以直接在原有的样式上增加、修改、禁用样式属性,如图中标记2显示。
在New style rule右边为Toggle Element State,选择后会出现标记3显示的选择框,如果选中:hover后,即可以看到鼠标悬停在页面元素上时的CSS样式了,作用类似于前面的Force Element Satte,更多内容可以看:hover state in Chrome Developer Tools 。
更强大的是,开发者工具以直观的图形展示了盒子模型的margin、border、padding部分,如标记5所示。下面动态图给出了盒子模型的一个示例:
Console
Console可以查看网页运行后提示的消息,错误或者警告以及输出内容等,网页后台可以使用Console.debug("输出内容");来在Console输出显示,可以做到调试的作用吧,不过一般真正调试不是拿Console。console.debug("Console使用介绍");console是小写形式,不然提示没有Console
Resources
Resources里可以查看web程序跑起来后所加载的一些资源(Resources),包括图片或者其他“值”,以及Cookies
Network
有时候我们的网页加载的很慢,而相同网速下,其他网页加载速度并不慢。这时候就得考虑优化网页,优化前我们必须知道加载速度的瓶颈在哪里,这个时候可以考虑使用Network工具。下图为我的博客首页加载时的Network情况:
请求的每个资源在Network表格中显示为一行,每个资源都有许多列的内容(如红色区块1),不过默认情况下不是所有列都显示出来。
Name/Path: 资源名称以及URL路径;
Method: HTTP请求方法;
Status/Text: HTTP状态码/文字解释;
Type: 请求资源的MIME类型;
Initiator解释请求是怎么发起的,有四种可能的值:
Parser:请求是由页面的HTML解析时发送的;
Redirect:请求是由页面重定向发送的;
Script:请求是由script脚本处理发送的;
Other:请求是由其他过程发送的,比如页面里的link链接点击,在地址栏输入URL地址。
Size/Content: Size是响应头部和响应体结合起来的大小,Content是请求内容解码后的大小。进一步了解可以看这里Chrome Dev Tools - “Size” vs “Content”;
Time/Latency: Time是从请求开始到接收到最后一个字节的总时长,Latency是从请求开始到接收到第一个字节的时间;
Timeline: 显示网络请求的可视化瀑布流,鼠标悬停在某一个时间线上,可以显示整个请求各部分花费的时间。
以上是默认显示的列,不过我们可以在瀑布流的顶部右键,这样就可以选择显示或者隐藏更多的列,比如Cache-Control, Connection, Cookies, Domain等。
我们可以按照上面任意一项来给资源请求排序,只需要单击相应的名字即可。Timeline排序比较复杂,单击Timeline后,需要选择根据Start Time、Response Time、End Time、Duration、Latency中的一项来排序。
红色区块2中,一共有6个小功能:
Record Network Log: 红色表示此时正在记录资源请求信息;
Clear: 清空所有的资源请求信息;
Filter: 过滤资源请求信息;
Use small resource raws: 每一行显示更少的内容;
Perserve Log: 再次记录请求的信息时不擦出之前的资源信息;
Disable cache: 不允许缓存的话,所有资源均重新加载。
选择Filter后,就会出现如红色区块3所显示的过滤条件,当我们点击某一内容类型(可以是Documents, Stylesheets, Images, Scripts, XHR, Fonts, WebSockets, Other)后,只显示该特定类型的资源。在XHR请求中,可以在一个请求上右键选择“Replay XHR”来重新运行一个XHR请求。
有时候我们需要把Network里面内容传给别人,这时候可以在资源请求行的空白处右键然后选择Save as HAR with Content保存为一个HAR文件。然后可以在一些第三方工具网站,比如这里重现网络请求信息。
选定某一资源后,我们还可以Copy as cURL,也就是复制网络请求作为curl命令的参数,详细内容看 Copying requests as cURL commands
此外,我们还可以查看网络请求的请求头,响应头,已经返回的内容等信息,如下图:
资源的详细内容有以下几个:
HTTP request and response headers
Resource preview: 可行时进行资源预览;
HTTP response: 未处理过的资源内容;
Cookie names and values: HTTP请求以及返回中传输的所有Cookies;
WebSocket messages: 通过WebSocket发送和接收到的信息;
Resource network timing: 图形化显示资源加载过程中各阶段花费的时间
Source
Sources面板几乎是我最常用到的Chrome功能面板,也是在我看来决解一般问题的主要功能面板。通常只要是开发遇到了js报错或者其他代码问题,在审视一遍自己的代码而一无所获之后,我首先就会打开Sources进行js断点调试,而它也几乎能解决我80%的代码问题。Js断点这个功能让人兴奋不已,在没有js断点功能,只能在IE(万恶的IE)中靠alert弹出窗口调试js代码的时代(特别alert一个object根本不会理你),那样的开发环境对于前端程序员来说简直是一场噩梦。本篇文章讲会介绍Sources的具体用法,帮助各位在开发过程中够愉快地调试js代码,而不是因它而发疯。首先打开F12开发工具切换到Sources面板中:
Sources功能面板是资源面板,他主要分为四个部分,四个部分并不是独立的,他们互相关联,互动共同实现一个重要的功能:监控js在执行期的活动。简单来说就是断点啦。
首先我们来看区域1,它的功能有些类似于Resources面板,主要是显示网页加载的脚本文件:例如css, js等资源文件(它不包含cookie,img等静态资源文件)。
区域1的导航条上有三个tab切换选项,他们都存有不同域名和环境下的js和css文件,我们首先来说明Sources(资源)选项的作用:
Sources: 包含该项目的静态资源文件。双击选中文件,该文件内容会在区域2中显示,如果你选中的是js文件,那么你可以在区域2种单击行号进行断点调试,只要js执行到了你所标记的这一行,它会停止向下执行并且等待你的命令:
从上图可以看到js执行到断点处时各个区域的变化,首先是区域3中的Breakpoints记录信息会变高亮,然后是区域4中Scope 选项中列出了断点处私有和公有的变量信息,这样,我可以很直观地知道,此时此刻js的执行状态。同样的,你可以把鼠标放到区域2种的某个变量上,浏览器会弹出一个小框框,框框里面则是你悬浮其上的变量所有信息:
然后,你可以按F10跟着js执行的路径一步一步地走下去,如果你遇到了一个函数包含着另外一个函数,那么你可以按F11进入到个函数中去观察它的代码执行活动。你也可以通过点击区域1底部的各个图标对js代码进行跟踪。不过我建议你使用快捷键,故名思义,因为它比较快捷方便。不过怎么用完全按照个人习惯来吧。下图是各个按钮的作用功能。
在上图蓝色圆圈中数字,它们分别代表:
1、停止断点调试
2、不跳入函数中去,继续执行下一行代码(F10)
3、跳入函数中去(F11)
4、从执行的函数中跳出
5、禁用所有的断点,不做任何调试
6、程序运行时遇到异常时是否中断的开关
接下来在区域4种切换到Watch Expressions 选项,它的作用是为目前断点添加表达式,使得每次断点往下走一步都会执行你写下的js代码。需要注意的是这个功能必须谨慎使用,因为这可能会导致你写下的监控代码段会不断地被执行。
为了避免你的调试代码重复执行,我们可以在调试时直接在console控制台上一次性地输出当前断点处的信息(推荐这样做)。为了验证我们在console面板中拥有的是当前断点环境,我门可以对比断点执行前后的this值变化。
如果你觉得在断点的时候为了看一个变量必须借用console面板输出的方式来查看会比较麻烦,那么你可以更新最新版的Chrome,它已经为我们解决了这个烦恼。为了方便开发者调试,在这一点上谷歌已经做到了极致,就在前几天更新过Chrome以后,卤煮意外地发现了断点时监控环境变量的另外一种方式,这种方式极为清晰,在断点调试的时候,区域2中会自动显示每个变量的值,每次代码往下走的时候这个值都回时时更新。这让开发者对当前环境变量几乎可以说是一目了然。(此功能有一个小缺陷,那就是无法查看数组或者对象的具体索引和值,不过我相信google会改进它的。)
当你的项目已经线上,出现了一个bug,你修复了之后无法看到它真正在线上的效果,那么你可以在打开线上的项目,直接在浏览器中修改代码然后看到效果。这样的效果往往是最直接的,这种方法也能帮你省去频繁验证发布的麻烦,毕竟身为前端码农的你也一定会听到过后台(通常情况下是后台发布)大哥的抱怨:“XXX,测试通过了没,不要出现了哈,发布一次很麻烦的!”。而在Chrome里面,只需要在区域2种直接修改,你就可以验证你的代码在线上是否可行。卤煮在此处只是指出该功能的用法之一。其他的就凭诸位的聪明才智去想了。
即使在断点时,你也可以编辑代码,按ctrl+S保存之后,你会看到区域2的背景由白色变为浅色,而断点会重新开始执行。
回到区域1,Content script 选项开里面包含着一些第三方插件或者浏览器自身的js代码,经常它是被忽略的,实际上它的作用很少。我们可以更多关注一下Snippets选项。还记得基础篇里面介绍的style吗?在里面我们可以编辑界面的css代码并且即时看到它们的映射效果,同样地,在Sinppets中,我们也 可以编辑(重写)js代码片段。这些片段实际上就相当于你的js文件一样,不同的是本地的js文件在编辑器里面编辑的,而此处,你是在浏览器中编写的。这些代码片段在浏览器刷新的时候既不会消失,也不会执行,除非是你手动执行它。它可以存在你的本地浏览器中,即使关闭浏览器,再次打开时它依然还在那里。它的主要作用可以使得我们编写一些项目的测试代码时提供便捷,你知道,如果你在编辑器上编写这些代码,在发布时你必须为它们添加注释符号或者手动删除它们,而在浏览器上编写就不需要这样繁琐了。
在Snippets选项的空白处右键后选择弹出的new选项,建立一个你自...
这封开发信帮我开发了好几个客户 推广视频课程
做外贸,如果能吃透开发信这块,威力无穷,受益终生。发开发信要质量不要数量。
开发信开发客户的好处: 对于外贸业务员来说,能自己开发成功客户,带来订单,自己的收入会有很大的提升,其次对自己的职业发展和以后的创业能起到很大的帮助作用。 对于公司老板来说,如果能很好掌握开发信自主开发客户,这样就不会太依赖平台接单,最重要的是能给公司带来大的客户和持续的订单,这样公司才会发展越来越壮大。
怎样的开发信才算是成功的? 1)客户收到你的开发信2) 客户点击打开你的开发信 3)客户有兴趣读你的开发信 4)客户回复你的开发信
客户能回复你的开发信,其实你就已经成功了一大半。
你发的开发信,客户能收到,而不是进入客户的spam。这是第一步,也是最重要的一步,要做好以下几点: 1.第一次发开发信不要带图片,如果有链接最好是在签名栏那里。2.邮件标题一定要简洁,用产品的关键词(不要添加任何修饰词)作为你的标题。 3.字体就用常规的英文字体,不要加粗,字体颜色用黑色或蓝色就可以,千万不要五颜六色。
客户收到你的开发信后,要让客户打开你的开发信,最主要以下2点做好: 1.开发信名称要讲究,这里有2种写法推荐1)最简单的写法就是用你的英文名的first name ,用地道的英文名,不要怪里怪气的。很过国外一看到姓氏,就知道是中国人发的,所以一般不建议写上last name. 2)第二种就是你的公司名加你的first name,注意公司名千万不要太长。例如下图:
2.邮件的标题也直接决定客户是否会打开你的开发信。除了我上面说的标题要简洁外,还有就是用你的产品关键词作为你的邮件标题。这里的产品关键词一定是与客户的网站上的内容吻合,还有就是邮件标题不要超过5个词,否则就太长了。
客户打开你的开发信后,客户会有2个动作,一是完全不感兴趣直接删除,二是有吸引人的地方,客户会读完你的开发信,要想客户是后者的动作,你需要: 1)开发信一定要有称呼,要让客户知道这个是专门发给他的。如果你在网站上确实找不到客户的姓名,你就直接用客户的网站域名,这样会为你加分不少。 2)开发信一定要直奔主题,这个主题就是你的产品。比如你发现客户是销售你们的产品,但是你们有一新款在客户的国家卖得非常好,但是客户的网站上并没有这款,你就可以把这点专门提炼出来,向客户介绍,再结合你的产品专业度,很容易激发客户的兴趣。我的开发信就是用的这点,很多客户都回复了。3)一定要用1,2,3,4这样分段写你的开发信,让客户一目了然。运用好这一技巧,你开发信的档次就一下上去了,让客户有好的印象。 4)简洁,简洁,简洁,开发信一定要简洁,重要的事说4遍。千万不要罗里吧嗦介绍你的公司,客户在对产品感兴趣之前,是不想去深入了解你的公司的。
要想让客户回复你的开发信,下面的技巧供参考: 1)在开发信的最后,要有提问。这个提问一定要围绕产品本身展开,引导客户回复你。2)提供免费样品。如果你真想开发成功客户,是要一点诚意的。这里需要注意的就是,你在开发信中可以写 free sample ,但是不要轻易出现free shipping。如果客户真的回复你了说需要免费样品,你说可以,但是运费需要客户出,这时候如果客户对你的产品很感兴趣的话,他是愿意付运费的,这时候你可以把部分样品费加到运费里面去的。 当然,你如果发现这个客户很对口,很有信心,你对你自己的产品质量各方面也很有信心的话,在你能接受的范围内,也可以给客户free sample,free shipping,这点需要你自己灵活运用。
模版网站替代定制开发网站? 企业视频课程
在互联网行业也摸爬滚打了那么些年的时间,总会遇到很多客户提出这样的问题:
模版网站和定制开发的网站有什么区别?
其实很简单,
模版就是一整套成型的网站,根据客户的喜好,选择一个模版,把公司名称,图片内容更改就行了。
耗时短,价格相对较低,适用于小微企业
订制开发网站就是根据企业的需求,为企业量身定制的网站,具有唯一性,可以根据企业的要求来做一些个性化的设计,做出一个适合企业本身并且满意的网站!
耗时长,价格高,适用于中大型企业
今天小编就着重讲一下模版网站
其实一提到模版网站,很多客户和企业会对模版网站造成一些偏见,认为不美观,延伸性不强,没有唯一性等等一系列问题。
互联网发展到今天,模版网站可以说不比一些定制网站差,不仅美观大气,还具有很强的延伸性,客户可以根据自己的喜好在后台随意拖动或更改模块,操作简单,在可以改变的一些相应模块的时候,唯一性也就略显尴尬了。
多得不说直接上一组摄影的模版:
求职季 | 为什么每个开发者都应该坚持经营一个博客? 行业视频课程
大数据文摘作品
编译:赵逸云、GAO Ning、荆浩男
博客真的很好用!它不仅可以成为你的创意来源,而且如果你想成为一名独立开发者,它可能成为你销售产品的平台。当然它也可以只是一个简单的展示你的想法的工具。
我写博客已经十一年了,虽然是断断续续地更新——而且有时候确实停了很长的一段时间。最近整理了一下我的博客,并打算坚持写下去——是真正的坚持:每天都写一点东西。对我而言,已经受益良多。
在经营博客的过程中,我找到了自己的使命:帮助开发新人学习前端开发。每天,我都会在我的博客flaviocopes中更新教程,介绍关于某方面我所了解的全部知识。如果你对JavaScript或者网页开发感兴趣,千万别错过它!
接下来是我关于博客的一些想法:关于为什么每个开发者都应该有博客,并且如何坚持写下去。
前提:一些我想让你忘掉的东西
“我不是专家啊”
每个人在任意一件事上都有一个独特的视角和看法,值得与他人分享。你可能会觉得你不如甲知道得多,但可能乙比你知道得还要少。那么对乙而言,他可能会从你的想法和经验里收获很多。
而且传授知识的最好时机,就是在你刚掌握它们之后,因为此时的你仍然记得对它们手足无措时的感受。
在这种情况下,你可以用刚学到一些知识的学生的语气来写博客。我每天都会学一些新东西,博客里有50%的内容是我在研究某个主题学到新东西后立马写下的。
“我不是一个好的作者”
我本来就不是一个好的作者,但是我不在乎。
请牢记:除非连续数年每天坚持写作,否则你永远也不可能成为一个好的作者。相信自己,最终一定能成为一名优秀的作者。
“我害怕被人批评”
的确,在互联网上人们肆无忌惮地对事情发表苛刻的观点,比如众所周知的Reddit和Hacker News,但这是好事。
如果没有挑战,就不会有成长。而且如果你不想,没有人可以强制你在那儿发帖。如果你担心有人会对有争议的帖子发表刻薄的评论,删掉那些评论就好啦。
对开发者而言:写作的益处
你可以学得更快
最好的学习方法之一就是动手去做。从字面上先选择一个自认为了解的主题,然后通过学习一些不了解的知识,甚至从来没想过的内容,然后螺旋状逐步深入学习。
有人说,只有当你能够把它明白地解释出来,你才是真正的理解了这个主题。博客就是用来解释知识的一个门槛相对较低的平台。
你可以开启自己的职业生涯
多亏了博客,我才开启了我在软件方面的职业生涯。
2017年,在大学的课业项目中,我需要搭建一些网站应用,基于过程中学到的一些零零散散的知识,我开始了自己的博客分享之旅。
通过这个博客,我开启了自己即将成为自由职业者和承包商的职业生涯。
那个旧的博客已经不见了——很久以前我就没有再更新它,里面的内容也早已过时。但是如果没有它,我绝不会想到有朝一日,我能在刚踏出校园时就能有自己的事业。
你可以调整技术方向
在博客写作中我做过几次方向调整。如果专注于某种技术的同时,发现自己对另外的一些知识感兴趣,我也会另写几篇关于它们的文章。
举个例子,去年夏天,我花了两个月时间深入学习Go编程。然后我收到了工作的offer。关键是我并没有进行申请,仅仅是因为他们看到了我在线分享的博客内容。
技术博客成功的关键因素
保持博客主题一致
我从不订阅没有主要关注点的博客。就我而言,我讨论的是前端开发的内容,因此订阅了一些其他关于前端开发的博客。
去年夏天我讨论了很多关于Go的内容,Go对于前端开发者来说,也是他们很感兴趣的内容(如果你有机会的话去学Go吧,这个编程语言让人耳目一新)。但也不要试图分享你想到的一切——保持专业。
持续更新
如果你计划每周发布一篇博客,请坚持做下去。当然一周两次可能会更好。现在我坚持每天写,因为我知道如果一旦允许自己某天停更,接下来我就会不断地允许自己休息,如此下去,我可能就很难再有更新了……
提前写好你想发布的内容
不要在打算更新博客的那天再开始写。提前一周写好它们,或者更早。这样即使你打算休息几天,或者生病等等,你也不会轻易地错过博客更新日。
提前发布也是个好方法。WordPress可以非常简单的实现这个功能,即使是静态博客也可以使用(这是我用Netlify和Hugo做的)。制定一个具体的时间表,安排好写博客的时间,然后坚持下去。
做一个想法记录表
James Altucher说过,每天记下10个点子,那么一年就有3650个点子了,总会有一些会成为好的点子。
对于在博客文章的主题而言,这个方法同样适用。列一张关于博客文章的想法清单。当你有灵感的时候,你将会将作品呈现得非常完美。
多读书,阅读博客,刷Twitter,收听播客
在你想写的主题上要保持与时俱进。比如我的博客主要是关于软件开发的,而Twitter上有源源不断的和软件开发相关的创意和想法,书和博客也是如此。媒介的力量是惊人的。
播客有些不同,因为它是用来听的。我通常是在开车时,或是外出遛狗的半天时间里去听。
早起
设置闹钟督促自己早起,然后开始写作。之前我都是早上8点才起床,因为我不需要赶早高峰(远程工作)。现在我早上6点起床,8点之前就能写完下周的新博文。当你完成了一项任务,比如8点之前创作好了一篇新的文章,你会超有干劲地对待接下来的一整天。
阻止分心
当你为了写一篇博文在网站上查资料时,很容易跳转到一些让人分心的网站。我在Mac上使用SelfControl软件来防止这种情况,而且我不能禁用这个阻止程序。
在自己的平台上写作
在你自己的平台上写作!在你自己的平台上写作!在你自己的平台上写作!重要的事情说三遍。使用其它平台转载,可以获得更大的影响力。
放眼未来,你发布的每篇文章在接下来的十年里都可能有成千上万的访问者。也许不是,但也许下一次谷歌最喜欢并贴上#1的爆文可能就是你的文章。
不要只在别人的平台上写作:你不曾拥有他们,他们甚至可能会倒闭(时有发生)或者停止服务,你将从此失去你的心血。
寻找观众
这与前面的观点是一致的。在刚开始的时候,即使你很积极地分享你的博文,每天的访问量可能也只有为10。(除非你在一些类似Reddit或者Hacker News的分享平台上努力顶贴)。
通过搜索引擎,你的博客流量会持续增长,但这就像是一个很长期的投资。如果你充满激情的文章不为别人所知的话,你很容易灰心。
所以,找到属于你的观众。在自己的博客上写好文章后,把文章导入到一些媒介平台上(给它加上标签,避免激起谷歌对重复内容的愤怒),或者想办法在一些有规模的刊物上发行。出版社渴望新的内容,因为他们需要满足一批读者。可能他们正在寻找的,就是你。有了早期的观众,将会增加你的热情和决心。最后,记得在文章里加上你的博客链接注明出处。
积极营销
在你点击“发布”的时候,你已经完成了50%的工作:你有自己的想法,也完成了主题研究和实际写作,也找出了拼写错误,有了适合的配图……现在需要做的,就是宣传你的文字。即使你的Twitter只有一个粉丝,也要将其在Twitter上发布出来,同时要积极寻找另外的途径让你的博客更广为人知。
一些社交平台可能会很欢迎你的自我宣传,但具体要取决于它的规则。
博客是个人专属媒体平台
几周前我在Hacker News看到了这句话:
不要仅仅把它当做一个博客。要把它看成你的专属媒体平台,唯一的目的是为了销售做推广。
这句话可以说是非常中肯了。我保存了它并打算每个月都重读一次。
说是销售可能会让你不舒服,但你可以想成在出售一些想法,或者售卖你自己的专业知识、自我营销。
设立一个电子邮箱列表
讲真。RSS并未消逝,但只有少部分人在使用了。 现在,如果你在Twitter或Medium上没有关注者,那么你只有自己的电子邮件列表了。我推荐你使用TinyLetter,因为它操作简单,而且免费,你值得拥有。
不要在乎设计
当你对设计毫无兴趣的时候,就选最简单的主题就好了。大道至简。
博客不是要写你自己
读者们并不在乎你是谁,他们来到你的博客无非是期望你能帮他们解决某个具体的问题(如果他们是从谷歌搜索跳转过来的话),或者他们希望能够从你的博客里学到些有用的知识,可以帮助他们做一些事情。所以,请为了帮助他们而写作吧!
避免弹窗和广告
不要有弹窗。如果你将开发人员作为你的目标读者,那么它们真的一点儿用都没有,因为弹窗真的很烦人,并且谷歌可能会为此而降低你的搜索结果排名。
同时,不要在你的网页上放广告。因为这些广告通常非常糟糕,除非你每天都有成千上万的阅读量,否则不要放广告,因为真的不值!
如果你使用的是第三方服务,请检查下相关的一些功能。因为一般情况,除非是付费用户,否则它会向其他未登录该平台的用户展示广告。
不要让你的博客“积灰”
如果你新建了一个博客,那么在发布一篇文章前,请准备好另外几篇待发文章。
不要长时间徘徊在这些文章上——给他们排个队,然后依次发布。设定一个发布时间表,坚持下去,永不放弃。
有些博客上每年只有3、4篇文章,或者已经被遗弃。想想这些博客的主人在建立这个博客之初的种种畅想,这真是一件很难过的事情。这些梦想从来没有被实现,而博客就这样被留了下来,孤独着,与主人渐行渐远。
不要让你的博客和它们一样沉沦下去。
原来设计师可以自己开发网站,不需要程序帮忙... 公司视频课程
你是否有过这样的困扰,做好了网站的页面设计,但是不会写代码,只能屁颠屁颠跑去程序员哥哥那里,求他们帮你搭建网站,还得看他们有没有时间、愿不愿意帮忙?现在福利来了,小编试用了几个智能在线建站网站,把里面的界面、功能、操作都给你列在下面,有了这些在线建站工具,再也不用靠颜值去求人了~
01 Wix
网址地址:https://wix/
Wix网站有上千万的忠实用户,因为这个免费的在线建设网站不用你会代码,里面有设计师精心设计好的模板供你挑选,种类丰富,还有强大的图片库存;安全的后台,7*24小时全天候的客服支持让你放心使用。最重要的是,Wix是真正的拖拽智能,里面模块可以任意拖曳和编辑,让任何不会代码的人也能设计出个性化的网站。
操作非常的简单便捷,只需几个步骤就能完成:
1、 首先需要用邮箱注册一个账号,也可以使用Facebook或者Google账号登陆。
2、登陆之后,进入我的账号管理页面,点击创建你的网站。
3、然后选择一个你想要创建网站的类别,下面我选择了餐饮类给大家展示。
4、接下来选择一个你喜欢的网站模板,不同的餐饮类型对应不同的模板,比如有咖啡馆、面包店、冰淇淋店、酒吧等等。这里我选择冰淇淋店吧,谁让小编是个冰淇淋控呢~
5、点击编辑之后进入到编辑页面,里面每个区域都可以任意拖拽、更改大小,字体颜色字号等可随意更改,图片可以裁剪、放大和缩小,可以上传本地图片或者从图片库里选择替换,如果不满意可以撤销返回上一步。
6、还可以点击手机图标,切换到手机端模式编辑。
7、编辑完点击保存,就能生成一个网站啦~如果想要个性化定制的域名,还可以选择升级为付费用户。
02 Weebly
网址地址:https://weebly/
作为同样的拖拽式智能建站,Weebly可以算是Wix的后辈,但是Weebly有个强大的功能——可以选择中文模式!简直是英语小白的福音呀~
Weebly也拥有非常多的优秀模板,是自主建站用户的很好选择。具体操作步骤如下:
1、首先需要创建一个账号,登录进去之后,会让你选择要不要建立网店(可以先选择暂时不建,之后有需要再添加)。
2、选择一个主题,是要建立企业、个人还是其他类别的网站。
3、点击编辑之后,选择注册一个新的域名或者链接到已有的域名。
4、进入编辑页面之后,可以直接从左边拖入想要添加的标题、文本、图片、位置等等,里面的图片可以编辑、替换,文本字体可以随意拖拽、编辑、删除等。
5、如果想开网店,可以点击店铺,添加商铺、产品、付款方式等信息。
6、点击手机图标选择移动,可以像Wix一样切换到响应式主题进行编辑。
7、编辑完点击保存并发布,可以监视你的网站访问数据。升级到付费用户还有免费使用一年以上域名、去除网站广告等更多的功能。
03 Squarespace
网址地址:https://squarespace/
Squarespace虽然没有Wix和Weebly那么多样化的模板,而且只有14天的免费试用期,但它的优点在于风格简约而不简单,专注内容,因此非常适合打造出细节丰富的网站。它的操作步骤也很简单:
1、注册账号登陆进去后,首先选择网站类别和模板主题。
2、点击开始,选择网站功能、用户等。
3、进入编辑页面,点击管理模块可以上下拖动模块顺序、编辑里面文字内容等等。
写在最后
这里给大家介绍了几个智能建站网站,网上也有很多其他的在线建站工具,但是不要认为从此可以高枕无忧而疏于练习和思考。没有设计的基本功,没有融入个人的想法创造,利用工具做出来的东西也仍然只是千篇一律的模板。
这些帮助你建站的网站只是提供便捷,省去繁琐的操作,提高效率的工具。建站的主题和内容,用户体验等等这些都是需要自己去用心思考和设计的。
程序员必学:浏览器开发者工具 行业视频课程
浏览器开发者工具到底是什么?
其实简单的说,浏览器开发者工具就是给专业的web应用和网站开发人员使用的工具,当然只要你有兴趣想要了解,只要你对这个世界充满这好奇,什么东西你都可以了解。
开发者工具到底有什么用?
它的作用在于,帮助开发人员对网页进行布局,比如HTML+CSS,帮助前端工程师更好的调试脚本(JavaScript、jQuery)之类的,还可以使用工具查看网页加载过程,获取网页请求(这个过程也叫做抓包),抓包是非常有意思的过程,而每一个浏览器厂商生产出来的浏览器都会有自己的杀手锏,也就是功能上的差别,那么这个时候你就找一个最适合自己的浏览器使用就可以,接下来就是介绍我常用的三个浏览器。
chrom浏览器打开-开发人员工具-方式如下:
手动打开开发者工具的方法
当然,也可使用快捷方式,最为简便:打开方式有两种:第一“按F12”,第二:shift+ctrl+i
开发人员工具的界面
下面,为大家介绍下几个功能的使用方法:
Elements
Elements工具像一把手术刀一样“解剖”了当前页面,我们看到的Elements页面一般像这样子:
图中标记为1的红色区块为页面HTML文件,HTML中的每个元素比如<body>、<p>都是一个DOM节点,所有的DOM节点组成了DOM树。我们完全可以把红色区块1当做是DOM树,把HTML元素标签看做DOM节点。
当我们在这里选中某一DOM对象时,网页中相应元素也会被阴影覆盖。我们可以对DOM对象进行修改,修改后结果会在页面实时显示出来。此外,还可以用 Command + f 搜索DOM树中指定的内容,或者是以HTML形式更改页面元素,如下图:
选中DOM对象之后右键即可以看到一些辅助的功能,如图中标记为2的区块所示:
Add Attribute: 在标签中增加新的属性;
Force Element State: 有时候我们为页面元素添加一些动态的样式,比如当鼠标悬停在元素上时的样式,这种动态样式很难调试。我们可以使用Force Element State强制元素状态,便于调试,如下图:
![图4. 强制元素状态][4]Edit as HTML: 以HTML形式更改页面元素;
Copy XPath: 复制XPath;
Delete Node: 删除DOM节点;
Break On: 设置DOM 断点。
图中被标记为3的蓝色区块显示当前标签的路径:从html开始一直到当前位置,我们单击路径中任何一个标签,即可以跳转到相应标签内容中去。
图中标记为4的蓝色区块实时显示当前选中标签的CSS样式、属性等,一共有以下5小部分:
Styles: 显示用户定义的样式,比如请求的default.css中的样式,和通过Javasript生成的样式,还有开发者工具添加的样式;
Computed: 显示开发者工具计算好的元素样式;
Event Listeners: 显示当前HTML DOM节点和其祖先节点的所有JavaScript事件监听器,这里的监听脚本可以来自Chrome的插件。可以点击右边小漏斗形状(filter)选择只显示当前节点的事件监听器。
DOM Breakpoints: 列出所有的DOM 断点;
Properties: 超级全面地列出当前选中内容的属性,不过基本很少用到。
实际应用中我们经常会用到Styles,如下图:
图中标记为1的+号为New style rule,可以为当前标签添加新的选择器,新建立的样式为inspector-stylesheet。此外,也可以直接在原有的样式上增加、修改、禁用样式属性,如图中标记2显示。
在New style rule右边为Toggle Element State,选择后会出现标记3显示的选择框,如果选中:hover后,即可以看到鼠标悬停在页面元素上时的CSS样式了,作用类似于前面的Force Element Satte,更多内容可以看:hover state in Chrome Developer Tools 。
更强大的是,开发者工具以直观的图形展示了盒子模型的margin、border、padding部分,如标记5所示。下面动态图给出了盒子模型的一个示例:
Console
Console可以查看网页运行后提示的消息,错误或者警告以及输出内容等,网页后台可以使用Console.debug("输出内容");来在Console输出显示,可以做到调试的作用吧,不过一般真正调试不是拿Console。console.debug("Console使用介绍");console是小写形式,不然提示没有Console
Resources
Resources里可以查看web程序跑起来后所加载的一些资源(Resources),包括图片或者其他“值”,以及Cookies
Network
有时候我们的网页加载的很慢,而相同网速下,其他网页加载速度并不慢。这时候就得考虑优化网页,优化前我们必须知道加载速度的瓶颈在哪里,这个时候可以考虑使用Network工具。下图为我的博客首页加载时的Network情况:
请求的每个资源在Network表格中显示为一行,每个资源都有许多列的内容(如红色区块1),不过默认情况下不是所有列都显示出来。
Name/Path: 资源名称以及URL路径;
Method: HTTP请求方法;
Status/Text: HTTP状态码/文字解释;
Type: 请求资源的MIME类型;
Initiator解释请求是怎么发起的,有四种可能的值:
Parser:请求是由页面的HTML解析时发送的;
Redirect:请求是由页面重定向发送的;
Script:请求是由script脚本处理发送的;
Other:请求是由其他过程发送的,比如页面里的link链接点击,在地址栏输入URL地址。
Size/Content: Size是响应头部和响应体结合起来的大小,Content是请求内容解码后的大小。进一步了解可以看这里Chrome Dev Tools - “Size” vs “Content”;
Time/Latency: Time是从请求开始到接收到最后一个字节的总时长,Latency是从请求开始到接收到第一个字节的时间;
Timeline: 显示网络请求的可视化瀑布流,鼠标悬停在某一个时间线上,可以显示整个请求各部分花费的时间。
以上是默认显示的列,不过我们可以在瀑布流的顶部右键,这样就可以选择显示或者隐藏更多的列,比如Cache-Control, Connection, Cookies, Domain等。
我们可以按照上面任意一项来给资源请求排序,只需要单击相应的名字即可。Timeline排序比较复杂,单击Timeline后,需要选择根据Start Time、Response Time、End Time、Duration、Latency中的一项来排序。
红色区块2中,一共有6个小功能:
Record Network Log: 红色表示此时正在记录资源请求信息;
Clear: 清空所有的资源请求信息;
Filter: 过滤资源请求信息;
Use small resource raws: 每一行显示更少的内容;
Perserve Log: 再次记录请求的信息时不擦出之前的资源信息;
Disable cache: 不允许缓存的话,所有资源均重新加载。
选择Filter后,就会出现如红色区块3所显示的过滤条件,当我们点击某一内容类型(可以是Documents, Stylesheets, Images, Scripts, XHR, Fonts, WebSockets, Other)后,只显示该特定类型的资源。在XHR请求中,可以在一个请求上右键选择“Replay XHR”来重新运行一个XHR请求。
有时候我们需要把Network里面内容传给别人,这时候可以在资源请求行的空白处右键然后选择Save as HAR with Content保存为一个HAR文件。然后可以在一些第三方工具网站,比如这里重现网络请求信息。
选定某一资源后,我们还可以Copy as cURL,也就是复制网络请求作为curl命令的参数,详细内容看 Copying requests as cURL commands
此外,我们还可以查看网络请求的请求头,响应头,已经返回的内容等信息,如下图:
资源的详细内容有以下几个:
HTTP request and response headers
Resource preview: 可行时进行资源预览;
HTTP response: 未处理过的资源内容;
Cookie names and values: HTTP请求以及返回中传输的所有Cookies;
WebSocket messages: 通过WebSocket发送和接收到的信息;
Resource network timing: 图形化显示资源加载过程中各阶段花费的时间
Source
Sources面板几乎是我最常用到的Chrome功能面板,也是在我看来决解一般问题的主要功能面板。通常只要是开发遇到了js报错或者其他代码问题,在审视一遍自己的代码而一无所获之后,我首先就会打开Sources进行js断点调试,而它也几乎能解决我80%的代码问题。Js断点这个功能让人兴奋不已,在没有js断点功能,只能在IE(万恶的IE)中靠alert弹出窗口调试js代码的时代(特别alert一个object根本不会理你),那样的开发环境对于前端程序员来说简直是一场噩梦。本篇文章讲会介绍Sources的具体用法,帮助各位在开发过程中够愉快地调试js代码,而不是因它而发疯。首先打开F12开发工具切换到Sources面板中:
Sources功能面板是资源面板,他主要分为四个部分,四个部分并不是独立的,他们互相关联,互动共同实现一个重要的功能:监控js在执行期的活动。简单来说就是断点啦。
首先我们来看区域1,它的功能有些类似于Resources面板,主要是显示网页加载的脚本文件:例如css, js等资源文件(它不包含cookie,img等静态资源文件)。
区域1的导航条上有三个tab切换选项,他们都存有不同域名和环境下的js和css文件,我们首先来说明Sources(资源)选项的作用:
Sources: 包含该项目的静态资源文件。双击选中文件,该文件内容会在区域2中显示,如果你选中的是js文件,那么你可以在区域2种单击行号进行断点调试,只要js执行到了你所标记的这一行,它会停止向下执行并且等待你的命令:
从上图可以看到js执行到断点处时各个区域的变化,首先是区域3中的Breakpoints记录信息会变高亮,然后是区域4中Scope 选项中列出了断点处私有和公有的变量信息,这样,我可以很直观地知道,此时此刻js的执行状态。同样的,你可以把鼠标放到区域2种的某个变量上,浏览器会弹出一个小框框,框框里面则是你悬浮其上的变量所有信息:
然后,你可以按F10跟着js执行的路径一步一步地走下去,如果你遇到了一个函数包含着另外一个函数,那么你可以按F11进入到个函数中去观察它的代码执行活动。你也可以通过点击区域1底部的各个图标对js代码进行跟踪。不过我建议你使用快捷键,故名思义,因为它比较快捷方便。不过怎么用完全按照个人习惯来吧。下图是各个按钮的作用功能。
在上图蓝色圆圈中数字,它们分别代表:
1、停止断点调试
2、不跳入函数中去,继续执行下一行代码(F10)
3、跳入函数中去(F11)
4、从执行的函数中跳出
5、禁用所有的断点,不做任何调试
6、程序运行时遇到异常时是否中断的开关
接下来在区域4种切换到Watch Expressions 选项,它的作用是为目前断点添加表达式,使得每次断点往下走一步都会执行你写下的js代码。需要注意的是这个功能必须谨慎使用,因为这可能会导致你写下的监控代码段会不断地被执行。
为了避免你的调试代码重复执行,我们可以在调试时直接在console控制台上一次性地输出当前断点处的信息(推荐这样做)。为了验证我们在console面板中拥有的是当前断点环境,我门可以对比断点执行前后的this值变化。
如果你觉得在断点的时候为了看一个变量必须借用console面板输出的方式来查看会比较麻烦,那么你可以更新最新版的Chrome,它已经为我们解决了这个烦恼。为了方便开发者调试,在这一点上谷歌已经做到了极致,就在前几天更新过Chrome以后,卤煮意外地发现了断点时监控环境变量的另外一种方式,这种方式极为清晰,在断点调试的时候,区域2中会自动显示每个变量的值,每次代码往下走的时候这个值都回时时更新。这让开发者对当前环境变量几乎可以说是一目了然。(此功能有一个小缺陷,那就是无法查看数组或者对象的具体索引和值,不过我相信google会改进它的。)
当你的项目已经线上,出现了一个bug,你修复了之后无法看到它真正在线上的效果,那么你可以在打开线上的项目,直接在浏览器中修改代码然后看到效果。这样的效果往往是最直接的,这种方法也能帮你省去频繁验证发布的麻烦,毕竟身为前端码农的你也一定会听到过后台(通常情况下是后台发布)大哥的抱怨:“XXX,测试通过了没,不要出现了哈,发布一次很麻烦的!”。而在Chrome里面,只需要在区域2种直接修改,你就可以验证你的代码在线上是否可行。卤煮在此处只是指出该功能的用法之一。其他的就凭诸位的聪明才智去想了。
即使在断点时,你也可以编辑代码,按ctrl+S保存之后,你会看到区域2的背景由白色变为浅色,而断点会重新开始执行。
回到区域1,Content script 选项开里面包含着一些第三方插件或者浏览器自身的js代码,经常它是被忽略的,实际上它的作用很少。我们可以更多关注一下Snippets选项。还记得基础篇里面介绍的style吗?在里面我们可以编辑界面的css代码并且即时看到它们的映射效果,同样地,在Sinppets中,我们也 可以编辑(重写)js代码片段。这些片段实际上就相当于你的js文件一样,不同的是本地的js文件在编辑器里面编辑的,而此处,你是在浏览器中编写的。这些代码片段在浏览器刷新的时候既不会消失,也不会执行,除非是你手动执行它。它可以存在你的本地浏览器中,即使关闭浏览器,再次打开时它依然还在那里。它的主要作用可以使得我们编写一些项目的测试代码时提供便捷,你知道,如果你在编辑器上编写这些代码,在发布时你必须为它们添加注释符号或者手动删除它们,而在浏览器上编写就不需要这样繁琐了。
在Snippets选项的空白处右键后选择弹出的new选项,建立一个你自...
原来设计师可以自己开发网站,不需要程序帮忙... 互联网视频课程
你是否有过这样的困扰,做好了网站的页面设计,但是不会写代码,只能屁颠屁颠跑去程序员哥哥那里,求他们帮你搭建网站,还得看他们有没有时间、愿不愿意帮忙?现在福利来了,小编试用了几个智能在线建站网站,把里面的界面、功能、操作都给你列在下面,有了这些在线建站工具,再也不用靠颜值去求人了~
01 Wix
网址地址:https://wix/
Wix网站有上千万的忠实用户,因为这个免费的在线建设网站不用你会代码,里面有设计师精心设计好的模板供你挑选,种类丰富,还有强大的图片库存;安全的后台,7*24小时全天候的客服支持让你放心使用。最重要的是,Wix是真正的拖拽智能,里面模块可以任意拖曳和编辑,让任何不会代码的人也能设计出个性化的网站。
操作非常的简单便捷,只需几个步骤就能完成:
1、 首先需要用邮箱注册一个账号,也可以使用Facebook或者Google账号登陆。
2、登陆之后,进入我的账号管理页面,点击创建你的网站。
3、然后选择一个你想要创建网站的类别,下面我选择了餐饮类给大家展示。
4、接下来选择一个你喜欢的网站模板,不同的餐饮类型对应不同的模板,比如有咖啡馆、面包店、冰淇淋店、酒吧等等。这里我选择冰淇淋店吧,谁让小编是个冰淇淋控呢~
5、点击编辑之后进入到编辑页面,里面每个区域都可以任意拖拽、更改大小,字体颜色字号等可随意更改,图片可以裁剪、放大和缩小,可以上传本地图片或者从图片库里选择替换,如果不满意可以撤销返回上一步。
6、还可以点击手机图标,切换到手机端模式编辑。
7、编辑完点击保存,就能生成一个网站啦~如果想要个性化定制的域名,还可以选择升级为付费用户。
02 Weebly
网址地址:https://weebly/
作为同样的拖拽式智能建站,Weebly可以算是Wix的后辈,但是Weebly有个强大的功能——可以选择中文模式!简直是英语小白的福音呀~
Weebly也拥有非常多的优秀模板,是自主建站用户的很好选择。具体操作步骤如下:
1、首先需要创建一个账号,登录进去之后,会让你选择要不要建立网店(可以先选择暂时不建,之后有需要再添加)。
2、选择一个主题,是要建立企业、个人还是其他类别的网站。
3、点击编辑之后,选择注册一个新的域名或者链接到已有的域名。
4、进入编辑页面之后,可以直接从左边拖入想要添加的标题、文本、图片、位置等等,里面的图片可以编辑、替换,文本字体可以随意拖拽、编辑、删除等。
5、如果想开网店,可以点击店铺,添加商铺、产品、付款方式等信息。
6、点击手机图标选择移动,可以像Wix一样切换到响应式主题进行编辑。
7、编辑完点击保存并发布,可以监视你的网站访问数据。升级到付费用户还有免费使用一年以上域名、去除网站广告等更多的功能。
03 Squarespace
网址地址:https://squarespace/
Squarespace虽然没有Wix和Weebly那么多样化的模板,而且只有14天的免费试用期,但它的优点在于风格简约而不简单,专注内容,因此非常适合打造出细节丰富的网站。它的操作步骤也很简单:
1、注册账号登陆进去后,首先选择网站类别和模板主题。
2、点击开始,选择网站功能、用户等。
3、进入编辑页面,点击管理模块可以上下拖动模块顺序、编辑里面文字内容等等。
写在最后
这里给大家介绍了几个智能建站网站,网上也有很多其他的在线建站工具,但是不要认为从此可以高枕无忧而疏于练习和思考。没有设计的基本功,没有融入个人的想法创造,利用工具做出来的东西也仍然只是千篇一律的模板。
这些帮助你建站的网站只是提供便捷,省去繁琐的操作,提高效率的工具。建站的主题和内容,用户体验等等这些都是需要自己去用心思考和设计的。