<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[澪月]]></title><description><![CDATA[前端的路越走越远]]></description><link>https://blog.youkuaiyun.com/For_GG</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; For_GG]]></copyright><item><title><![CDATA[获取el-form设置label-width：auto时计算的宽度值]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/132755872</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/132755872</guid><author>For_GG</author><pubDate>Fri, 08 Sep 2023 10:55:09 +0800</pubDate><description><![CDATA[【代码】获取el-form设置label-width：auto时计算的宽度值。]]></description><category></category></item><item><title><![CDATA[el-form表单验证：只在点击保存时校验（包含select、checkbox、radio）]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/132427932</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/132427932</guid><author>For_GG</author><pubDate>Tue, 22 Aug 2023 15:02:31 +0800</pubDate><description><![CDATA[input类型  在el-input里加入:validate-event="false"]]></description><category></category></item><item><title><![CDATA[el-table刷新列表数据后，选中行保持选中]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/111636450</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/111636450</guid><author>For_GG</author><pubDate>Thu, 24 Dec 2020 16:11:58 +0800</pubDate><description><![CDATA[&lt;el-table
						ref="eqTable"
						:data="tableData"
						@row-click="handleRowClick"



						type=selection
						:reserve-selection="true"
						:row-key="row =&gt; row.id"
						highlight-current-row
					&gt;

加上底下的4行
row-key自己给key，保持唯一即可。

...]]></description><category></category></item><item><title><![CDATA[CSS实现两端对齐（及原理）]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/88555624</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/88555624</guid><author>For_GG</author><pubDate>Thu, 14 Mar 2019 16:37:31 +0800</pubDate><description><![CDATA[废话不多说，先放实际代码。


&amp;lt;div&amp;gt;
    &amp;lt;div class='row'&amp;gt;中文两端对齐&amp;lt;span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;
	&amp;lt;div class='row'&amp;gt;中文ok&amp;lt;span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt]]></description><category></category></item><item><title><![CDATA[JQuery插件：1、为什么要返回return this.each()]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/81531567</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/81531567</guid><author>For_GG</author><pubDate>Thu, 09 Aug 2018 10:27:26 +0800</pubDate><description><![CDATA[  经常在JQuery插件中发现一个问题，为什么方法返回的都是return this.each()


jQuery.fn.test= function(){ 
   this.css(&quot;background&quot;,&quot;#ff0&quot;);//因为调用对象是JQuery对象，这里面的this为jquery对象，而不是dom对象 
   return this.each(function(){  
      ...]]></description><category></category></item><item><title><![CDATA[JavaScript生成指定范围的随机数]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/81026855</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/81026855</guid><author>For_GG</author><pubDate>Fri, 13 Jul 2018 10:40:37 +0800</pubDate><description><![CDATA[公司总是无聊的让我们互相填表评分，生死有命，富贵在天，各位我们随机吧！这就是最后代码了，按下F12，复制上去，敲下回车（如图1），全部复制，打开excel选中起始位置一格（如图2），贴上去就ok完事。var str = &quot;&quot;;
var max = 4;
var min = 3;
for(var k=0;k&amp;lt;20;k++){
	for(var i=1;i&amp;lt;=9;i++){
	var ra...]]></description><category></category></item><item><title><![CDATA[[JQuery] find()、has()、filter()、siblings()]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/80225363</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/80225363</guid><author>For_GG</author><pubDate>Mon, 07 May 2018 14:44:32 +0800</pubDate><description><![CDATA[&amp;lt;ul&amp;gt;
    &amp;lt;li&amp;gt;list item 1&amp;lt;/li&amp;gt;
    &amp;lt;li&amp;gt;list item 2&amp;lt;/li&amp;gt;
    &amp;lt;li class=&quot;findMe&quot;&amp;gt; &amp;lt;div&amp;gt;&amp;lt;p&amp;gt;pp&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt;&amp;lt]]></description><category></category></item><item><title><![CDATA[CSRF简单理解---HTTP Referer字段验证(Java实现)]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/79291178</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/79291178</guid><author>For_GG</author><pubDate>Thu, 08 Feb 2018 16:30:29 +0800</pubDate><description><![CDATA[CSRF攻击简单来说就是： 
1.你可以通过A网站发送请求“转100块给小明”。 
2.然后你碰巧又上了X网站，X的某链接藏着一条操作”转100快给小芳”。 
3.当你点击X网站的某个链接时，会利用你在A网站的session信息，发送请求”转100快给小芳”。 
所以CSRF防御的重点就是怎么判断发送请求的是不是原网站。

referer的验证原理简单来说就是： 
比对HTTP请求发送的网站(re...]]></description><category></category></item><item><title><![CDATA[style、currentStyle、getComputedStyle（）区别]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/79164284</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/79164284</guid><author>For_GG</author><pubDate>Thu, 25 Jan 2018 17:10:40 +0800</pubDate><description><![CDATA[JS 获取 html元素的样式有三种方式：style、getComputedStyle 和 currentStyle等。区别在于：

（1）style 只能获取行间样式，但能设置样式。

（2）getComputedStyle 和 currentStyle 能够获取 行间样式/非行间样式/浏览器默认样式，但存在浏览器兼容问题，且不能设置样式。



一、element.style 获取行间样式，以]]></description><category></category></item><item><title><![CDATA[JS不定参 arguments]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/79163561</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/79163561</guid><author>For_GG</author><pubDate>Thu, 25 Jan 2018 16:29:31 +0800</pubDate><description><![CDATA[当你定义的函数参数不确定时，是否想过一个词 “不定参”！js里的不定参便是运用的arguments参数。



        var param = ["1", 2,  ,{"aa":"11", "bb":"bb"}];

        text(param, "66", 77);

        function text(){
            var params = argum]]></description><category></category></item><item><title><![CDATA[<前端面试题>什么是语义化的HTML?有何意义？为什么要做到语义化？]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78969118</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78969118</guid><author>For_GG</author><pubDate>Thu, 04 Jan 2018 11:28:13 +0800</pubDate><description><![CDATA[一、什么是语义化的HTML？语义化的HTML就是写出的HTML代码，符合内容的结构化（内容语义化），选择合适的标签（代码语义化）,也就是说用正确的标签做正确的事情，能够便于开发者阅读和写出更优雅的代码的同时让网络爬虫很好地解析。二、为什么要做到语义化？1、有利于SEO，有利于搜索引擎爬虫更好的理解我们的网页，从而获取更多的有效信息，提升网页的权重。2、在没有CSS的时候能够清晰的看出网页的结构，增强]]></description><category></category></item><item><title><![CDATA[JS的构造函数]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78959075</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78959075</guid><author>For_GG</author><pubDate>Wed, 03 Jan 2018 11:05:16 +0800</pubDate><description><![CDATA[JavaScript对象的创建方式在JavaScript中，创建对象的方式包括两种：对象字面量和使用new表达式。对象字面量是一种灵活方便的书写方式，例如：var o1 = {
    p:”I’m in Object literal”,
    alertP:function(){
        alert(this.p);
    }
}这样，就用对象字面量创建了一个对象o1，它具有一个成员变]]></description><category></category></item><item><title><![CDATA[pip install scrapy报错：error: Unable to find vcvarsall.bat解决方法]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78773657</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78773657</guid><author>For_GG</author><pubDate>Mon, 11 Dec 2017 16:04:11 +0800</pubDate><description><![CDATA[在网上查找解决方法时，大致知道了问题的原因。是因为缺少C语言的编译环境，其中一种解决方法就是安装相对应版本的Visual Studio，但是安装VS本身就极其麻烦，所以这种方法是不推荐的。第二种方法就是下载已经编译好的安装包。
1.下载.whl安装包可以到下面这个网址中下载与python版本以及系统（32位或64位）相匹配的Twisted版本，比如我下载的就是Twisted-17.1.0-cp35-]]></description><category></category></item><item><title><![CDATA[【学习笔记】Python中的正则表达式re]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78741662</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78741662</guid><author>For_GG</author><pubDate>Thu, 07 Dec 2017 15:10:13 +0800</pubDate><description><![CDATA[匹配方法1.search（） 
只会返回一次匹配结果 
2.match（） 
从头开始匹配，一点不符合立马结束匹配 
3.全局匹配 
re.compile(str).findall(html) 
主要用法，可匹配所有结果。匹配的结果正则匹配的结果就是用原子匹配出的结果，3个(.*?)匹配出的就是3个部分的内容。i[2]就是第三部分的内容#url = '<a title="如何用Python写一个计算]]></description><category></category></item><item><title><![CDATA[【学习笔记】Python爬虫-豆瓣电影所有短评]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78737799</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78737799</guid><author>For_GG</author><pubDate>Thu, 07 Dec 2017 09:56:10 +0800</pubDate><description><![CDATA[用到的包：1.requests获取网页内容(中文api：http://docs.python-requests.org/zh_CN/latest/user/quickstart.html#id2)2.bs4解析网页(中文api：http://beautifulsoup.readthedocs.io/zh_CN/latest/)3.pymysql连接数据库存储信息遇到的问题：1.bs4可以快速筛选文字]]></description><category></category></item><item><title><![CDATA[学习笔记：正则表达式]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78656205</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78656205</guid><author>For_GG</author><pubDate>Tue, 28 Nov 2017 16:07:05 +0800</pubDate><description><![CDATA[1.写法概述正则表达式就是拼在一起的对比字符串，所以字符之间紧挨着。 
例如[a-z0-9_-]中括号表示这里面的东西选1个，a-z就是从a到z。所以这句话的意思就是匹配的单个字符在a-z，0-9，_，-里面。 
基于这点从左到右解读正则表达式就很简单了。2.先看懂，再会写1.简单用户名筛选：/^[a-z0-9_-]{3,16}$/
^$写在外面表示匹配的开始和结束，写在中括号里表示非
[a-z0-]]></description><category></category></item><item><title><![CDATA[treeview默认收缩指定行和nodeId取值]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78646599</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78646599</guid><author>For_GG</author><pubDate>Mon, 27 Nov 2017 16:45:37 +0800</pubDate><description><![CDATA[1.收缩指定行$('#tree').treeview('collapseNode', [ nodeId, { silent: true, ignoreChildren: false } ]);nodeId从上外下，从0开始系统自动赋值。 
如图，想要关闭2016的这一行，那就要取到2016这一行的nodeId，42.默认选中指定行$('#project').treeview('selectNode']]></description><category></category></item><item><title><![CDATA[PDF.js 在线pdf阅读插件（禁止打印，下载，每页水印）]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78616063</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78616063</guid><author>For_GG</author><pubDate>Thu, 23 Nov 2017 16:20:27 +0800</pubDate><description><![CDATA[PDF.js实际运行起来的页面UI效果：http://mozilla.github.io/pdf.js/web/viewer.html

插件下载：https://pan.baidu.com/s/1jIDxrYA



1.调用方法：

把generic文件放在项目代码中



a href="resources/js/pdfJs/generic/web/viewer.html?file=../.]]></description><category></category></item><item><title><![CDATA[JS 将 string 转换成为 number]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78557966</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78557966</guid><author>For_GG</author><pubDate>Fri, 17 Nov 2017 10:05:01 +0800</pubDate><description><![CDATA[汇总一下各类方法： 
1)：parseInt  
var x = parseInt(&quot;10&quot;);  // 10 
带有两个参数：第一个是目标转换字符串，第二个用来指定将字符串转化为几进制的数字，并且radix的范围是(2~36)  
parseInt(string, radix)2)：利用js变量弱类型转换，最近很喜欢用这种方式代码简洁var a = &quot;1000&quot;;typeof(   +a    )]]></description><category></category></item><item><title><![CDATA[jQuery的三种$()]]></title><link>https://blog.youkuaiyun.com/For_GG/article/details/78457794</link><guid>https://blog.youkuaiyun.com/For_GG/article/details/78457794</guid><author>For_GG</author><pubDate>Mon, 06 Nov 2017 15:02:21 +0800</pubDate><description><![CDATA[1、$()可以是$(expresion)，即css选择器、Xpath或html元素，也就是通过上述表达式来匹配目标元素。 
比如：$("a")构造的这个对象，是用CSS选择器构建了一个jQuery对象——它选择了所有的`<a/>`这个标签。如： $("a").click(function(){...}) 就是在点击页面上的任何一个链接时的触发事件。确切地说，就是jQuery用`<a/>`这个标签构建]]></description><category></category></item></channel></rss>