一些开发中的使用小笔记!~

来源:互联网 发布:mac禁止软件开机启动 编辑:程序博客网 时间:2024/05/16 03:44

 

 

1 JDK自带的实用工具——native2ascii.exe

native2ascii.exe

例子:

我们    -> /u6211/u4eec

 

如果倒过来的话用native2ascii.exe -reverse 

 例子:

/u6211/u4eec    -> 我们

 

2. js动态添加一个DIV后,设置属性和方法如下:

 

var closeDiv = document.createElement("div");

closeDiv.id = "closetDiv"+i;

closeDiv.style.cursor = "pointer";

closeDiv.style.background="#CCC";

closeDiv.innerHTML = "关  闭";

closeDiv.onclick = function(){this.parentNode.style.display='none'};

 

 

3.广告浮动,随浏览器滚动条滚动的浮动广告代码(IE6 IE7 火狐都支持)

setInterval(mymovemenu, 1);   

 

function mymovemenu()

{

var allDiv = document.getElementsByTagName("div");

for ( var i = 0; i < allDiv.length; i++)

{

// 如果是浮动块

var divId = allDiv[i].id;

if (divId.indexOf("scroll") != -1)

{

var top = divId.split("_");

//var top = parseInt(divId.slice(7));

document.getElementById(allDiv[i].id).style.top = myScrollTop()+ parseInt(top[1]) + "px";

//sdocument.getElementById(allDiv[i].id).style.right = 300 + 'px';

}

}

}

 

 

var myScrollTop = function() // 获得当前窗口显示区顶点位置

{

return document.documentElement.scrollTop ? document.documentElement.scrollTop

: document.body.scrollTop;

};

 

 

说明:原理就是不断进行监视浏览器,用setInterval()函数来实现,然后将浏览器滚动的高度+广告滚动条自身的高度这样就实现了跟随滚动啦。。。。。

 

4. 广告飘动,代码是别人,拿来直接用拉,有机会再研究吧。

 

function mysliderpadmenu()

{

var allDiv = document.getElementsByTagName("div");

for ( var i = 0; i < allDiv.length; i++)

{

// 如果是浮动块

if (allDiv[i].id.indexOf("sliderpad") != -1)

{

 

// 直接通过id绑定就可以了

var tt = new AdMove(allDiv[i].id);

tt.Run();

}

}

}

 

function addEvent(obj, evtType, func, cap)

{

cap = cap || false;

if (obj.addEventListener)

{

obj.addEventListener(evtType, func, cap);

return true;

}

else if (obj.attachEvent)

{

if (cap)

{

obj.setCapture();

return true;

}

else

{

return obj.attachEvent("on" + evtType, func);

}

}

else

{

return false;

}

}

function getPageScroll()

{

var xScroll, yScroll;

if (self.pageXOffset)

{

xScroll = self.pageXOffset;

}

else if (document.documentElement && document.documentElement.scrollLeft)

{

xScroll = document.documentElement.scrollLeft;

}

else if (document.body)

{

xScroll = document.body.scrollLeft;

}

if (self.pageYOffset)

{

yScroll = self.pageYOffset;

}

else if (document.documentElement && document.documentElement.scrollTop)

{

yScroll = document.documentElement.scrollTop;

}

else if (document.body)

{

yScroll = document.body.scrollTop;

}

arrayPageScroll = new Array(xScroll, yScroll);

return arrayPageScroll;

}

function GetPageSize()

{

var xScroll, yScroll;

if (window.innerHeight && window.scrollMaxY)

{

xScroll = document.body.scrollWidth;

yScroll = window.innerHeight + window.scrollMaxY;

}

else if (document.body.scrollHeight > document.body.offsetHeight)

{

xScroll = document.body.scrollWidth;

yScroll = document.body.scrollHeight;

}

else

{

xScroll = document.body.offsetWidth;

yScroll = document.body.offsetHeight;

}

var windowWidth, windowHeight;

if (self.innerHeight)

{

windowWidth = self.innerWidth;

windowHeight = self.innerHeight;

}

else if (document.documentElement && document.documentElement.clientHeight)

{

windowWidth = document.documentElement.clientWidth;

windowHeight = document.documentElement.clientHeight;

}

else if (document.body)

{

windowWidth = document.body.clientWidth;

windowHeight = document.body.clientHeight;

}

if (yScroll < windowHeight)

{

pageHeight = windowHeight;

}

else

{

pageHeight = yScroll;

}

if (xScroll < windowWidth)

{

pageWidth = windowWidth;

}

else

{

pageWidth = xScroll;

}

arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight)

return arrayPageSize;

}

 

var AdMoveConfig = new Object();

AdMoveConfig.IsInitialized = false;

AdMoveConfig.ScrollX = 0;

AdMoveConfig.ScrollY = 0;

AdMoveConfig.MoveWidth = 0;

AdMoveConfig.MoveHeight = 0;

AdMoveConfig.Resize = function()

{

var winsize = GetPageSize();

AdMoveConfig.MoveWidth = winsize[2];

AdMoveConfig.MoveHeight = winsize[3];

AdMoveConfig.Scroll();

}

AdMoveConfig.Scroll = function()

{

var winscroll = getPageScroll();

AdMoveConfig.ScrollX = winscroll[0];

AdMoveConfig.ScrollY = winscroll[1];

}

addEvent(window, "resize", AdMoveConfig.Resize);

addEvent(window, "scroll", AdMoveConfig.Scroll);

function AdMove(id)

{

if (!AdMoveConfig.IsInitialized)

{

AdMoveConfig.Resize();

AdMoveConfig.IsInitialized = true;

}

var obj = document.getElementById(id);

obj.style.position = "absolute";

var W = AdMoveConfig.MoveWidth - obj.offsetWidth;

var H = AdMoveConfig.MoveHeight - obj.offsetHeight;

var x = W * Math.random(), y = H * Math.random();

var rad = (Math.random() + 1) * Math.PI / 6;

var kx = Math.sin(rad), ky = Math.cos(rad);

var dirx = (Math.random() < 0.5 ? 1 : -1), diry = (Math.random() < 0.5 ? 1 : -1);

var step = 1;

var interval;

this.SetLocation = function(vx, vy)

{

x = vx;

y = vy;

}

this.SetDirection = function(vx, vy)

{

dirx = vx;

diry = vy;

}

obj.CustomMethod = function()

{

obj.style.left = (x + AdMoveConfig.ScrollX) + "px";

obj.style.top = (y + AdMoveConfig.ScrollY) + "px";

rad = (Math.random() + 1) * Math.PI / 6;

W = AdMoveConfig.MoveWidth - obj.offsetWidth;

H = AdMoveConfig.MoveHeight - obj.offsetHeight;

x = x + step * kx * dirx;

if (x < 0)

{

dirx = 1;

x = 0;

kx = Math.sin(rad);

ky = Math.cos(rad);

}

if (x > W)

{

dirx = -1;

x = W;

kx = Math.sin(rad);

ky = Math.cos(rad);

}

y = y + step * ky * diry;

if (y < 0)

{

diry = 1;

y = 0;

kx = Math.sin(rad);

ky = Math.cos(rad);

}

if (y > H)

{

diry = -1;

y = H;

kx = Math.sin(rad);

ky = Math.cos(rad);

}

}

this.Run = function()

{

var delay = 1;

interval = setInterval(obj.CustomMethod, delay);

obj.onmouseover = function()

{

clearInterval(interval);

}

obj.onmouseout = function()

{

interval = setInterval(obj.CustomMethod, delay);

}

}

}

 

4 随机创建一个文件的代码

 

 

public static String generateFileName(String fileName)

{

// 获得当前时间

DateFormat format = new SimpleDateFormat("yyMMddhmmss");

// 转换为字符串

String formatDate = format.format(new Date());

 

System.out.println("formatDate="+formatDate);

// 随机生成文件编号

int random = new Random().nextInt(1000);

System.out.println("random="+random);

// 获得文件后缀名称

int position = fileName.lastIndexOf(".");

String extension = fileName.substring(position);

// 组成一个新的文件名

String newFileName = formatDate + random + extension;

return newFileName;

 

}

 

 

结果:

 

formatDate=101216112108

random=657

101216112108657.txt

 

 

原理:获取系统日期然后加一个随机数,最后加上文件名即可

 

5 关于JS设置readonly属性

 

// jquery设置readonly

$('input').attr("readonly","readonly")//将input元素设置为readonly
$('input').removeAttr("readonly");   //去除input元素的readonly属性

 

// 不同js设置readonly

document.getElementById("address").readOnly  = "readonly";

 

注意这里是readOnly  ,不似乎readonly,如果设置成readonly,会提示没有这个属性,所以怎么设置都没用!!~

 

6 关于动态导入JS文件的问题:

 

动态导入JS代码:

 

var script = document.createElement("script");script.type= "text/javascript";var href = window.location.href;script.src= "js/sliderpad.js";script.src= ../../js/sliderpad.js";document.getElementsByTagName('head')[0].appendChild(script);
动态导入完js文件后不能立即使用其中的js方法,因为那个时候该方法可能还没有加载完,所以必须定时去检查改js文件是否已经加载完成,
然后才能调用其方法。
function dofill(){    if(typeof(initalSlierpad)=='function')//判断要加载的js文件中的方法是否存在    {    initalSlierpad();    }else setTimeout("dofill()",200); //如果方法不存在,过200毫秒后再调用}
7 关于自动回车提交的问题
一般规则如下:
  1. 如果表单里有一个type=”submit”的按钮,回车键生效。
  2. 如果表单里只有一个type=”text”的input,不管按钮是什么type,回车键生效。
  3. 如果按钮不是用input,而是用button,并且没有加type,IE下默认为type=button,FX默认为type=submit。
  4. 其他表单元素如textarea、select不影响,radio checkbox不影响触发规则,但本身在FX下会响应回车键,在IE下不响应。
  5. type=”image”的input,效果等同于type=”submit”,不知道为什么会设计这样一种type,不推荐使用,应该用CSS添加背景图合适些。

比如说:

<s:form>

...

...

...

<input type="image".....>

</s:form>

 

这样的会自动提交,比如这个里面是关键字搜索功能。

 

又比如说:

<s:form>

<input type="text" ...>

<input type="button"...>

</s:form>

 

这样按照规则2会有自动提交,如果不要回车提交,一般可以再加个<input type="text" style="display:none">隐藏文本,这样回车失效。或者捕捉onkeydown的回车事件,例如

 

var event = e || window.event;

var keyCode = event.keyCode;

if(keyCode == 13){

goToPage(obj.value, totalNum);

if (event.preventDefault) {   //禁用默认事件

event.preventDefault();

} else {

event.returnValue = false;  

}

 

}

 

这样就是自己将默认事件失效,上面的代码还有个小技巧,因为火狐没有window.event,所以如果要考虑兼容性,需要将event传入函数,

goHandler(this, ${pageHelp.pageCount}, event);就想这样,这样IE火狐都可以用了。

原创粉丝点击