Category: WEB


nginx 配置

过期时间
expires 1y;

 

每个IP只允许一个连接
limit_conn one 1;

 

限速
limit_rate 100k;

 

文件列表

autoindex on;

jQuery 插件 开发

记录一些最近开发中用到的东西。

创建插件

//Create
jQuery.myFunctionOne = function (){};
jQuery.fn.myFunctionTwo = function (){};

//Use
$.jQuery.myFunctionOne();
$('#div_id').myFunctionTwo();

支持连缀

//return one
jQuery.myFunctionOne = function (){
	return this;
};

//return many
jQuery.myFunctionTwo = function (){
	return this.each(function(){});
};

扩展

//extend hide
jQuery.showHide = function (func){
	return this.hide('slow',func);
};

先写这么多,以后再加。

YUI 2 WIDGET MAXLENGTH TIP

YAHOO.widget.MaxLengthTip

YUI 练习之作,放在YAHOO.widget.widget下面了

演示地址: http://app.orzk.com/mlt/

源码地址: http://app.orzk.com/mlt/max_length_tip.js

打包下载: http://app.orzk.com/mlt/mlt.zip

使用方法


var config = {
	'TIP_LESS': '还能输入%l个字',
	'TIP_MORE': '超过了%m个字',
	'TIP_EQUAL': '达到指定字数',
	'TIP_LESS_CLASS': 'yui-mlt-tip-less',
	'TIP_MORE_CLASS': 'yui-mlt-tip-more',
	'TIP_EQUAL_CLASS': 'yui-mlt-tip-equal',
	'TEXTAREA_HOOK': false
};
var maxLengthTipInput = new YAHOO.widget.MaxLengthTip('max_length_tip_input','input_tip');
var maxLengthTipTextArea = new YAHOO.widget.MaxLengthTip('max_length_tip_textarea','textarea_tip',config);
var maxLengthTipTextAreaHook = new YAHOO.widget.MaxLengthTip('max_length_tip_textarea_hook','textarea_tip_hook');

SEC (Search Engine Confuse) 搜索引擎混

目的

出于对网站内容保护的目的,不允许网站内容被搜索引擎或软件抓取,对页面直接输出的内容进行混淆,通过javascript在页面载入完成后再抓取真实信息展示给普通用户。

实现方式

服务器端输入任意内容,通过<div class=”sec sec-key”>随意输出的内容</div>。

客户端通过加载一个js,来实现将内容替换成原本需要显示真实内容。

服务器提供一个借口,允许通过key来获取真实信息。

$arr_database = require('database.inc');
$int_postid = 123456;
...


...

用户看到的内容

sec.js

var secClass = 'sec';
var secKey = 'secKey';
var secServer = 'sec_server.php';
$(document).ready(function(){
	$('.'+secClass).each(function(index,obj){
        var key = $(obj).attr(secKey);
		var serverUrl= secServer+'?key='+key;
		$(obj).load(serverUrl);
	});
});

sec_server.php

$arr_database = require('database.inc');

database.inc

return array(
	'123456' => '123456:测试内容1',
	'123457' => '123457:测试内容2',
	'123458' => '123458:测试内容3',
);
Powered by WordPress | Theme: Motion by 85ideas.