xWin之JS版(2-26更新)第1/2页

俺最近似乎在反反复复的折腾xWin。。。。希望版主不要打我.......

之所以又开一帖是因为上一贴的侧重点在htc上,俺现在决定抛弃这个很有前途的东西,把侧重点放到兼容性上,开发一个x系列. So 大家把那个HTC的忘记了吧........

目前的代码兼容IE6.0 & FF 1.5 (因为俺以前一直都是IE Only, 所以转头研究兼容性实在是水平有限,目前的代码在FF上还是有许多Bug.....伤心啊)

构思中的x系列都是采用JS, 在JS中导入相应的css, 使用的时候还是一样简便: 一个<script src="...">后就可以直接使用了

--------------------------更新分割线--------------------------
bound0大哥说得对啊,兼容性真的能把人折腾死.........

目前代码应该没什么bug了,兼容IE6.0 & FF 1.5, 通过xHTML 的Transitional验证 和 CSS 验证

为了能通过验证,只好再次改变使用的方式,改为用DIV实现,方法:


代码如下:

<div class="xWin">
    <span class="xWinSetting"> width="200" top="270" left="140" title="我就是传说中那个超长的窗口标题"</span>
    content
</div>

下面是演示版:

xWin HTC Demo

body {
width:100%;
height:100%;
margin:0px;
padding:0px;
overflow:auto;
}

.xWin {
position:absolute;
cursor:default;
border-width:2px;
border-style:outset;
padding:0px;
font-size:12px;
overflow:hidden;
display:block;
}

.xWin .xWinSetting {
display:none;
}

.xWin .xTitle {
color:#FFFFFF;
height:20px;
display:block;
}

.xWin .xTitle input {
background-color:transparent;
color:#FFFFFF;
border-width:0px;
border-style:solid;
height:20px;
width:16px;
line-height:20px;
font-family:webdings;
font-size:10px;
margin:0px;
padding:0px;
text-align:center;
float:right;
display:block;
}

.xWin .xTitle .xWinTitleCloseButton {

}

.xWin .xTitle .xWinTitleMaxButton {

}

.xWin .xTitle .xWinTitleMinButton {

}

.xWin .xTitle .xWinTitleContent {
color:#FFFFFF;
font-size:12px;
height:18px;
line-height:20px;
margin:0px;
padding-left:3px;
float:left;
display:block;
overflow:hidden;
white-space:nowrap;
text-align:left;
cursor:default;
}

.xWin .xWinBody {
margin:0px;
background-color:#FFFFFF;
color:#000000;
padding:3px;
font-size:12px;
overflow:auto;
position:relative;
display:block;
}

.xShadow {
position:absolute;
display:block;
background-Color:#000000;
color:#FFFFFF;
}

//content

支持属性:
int left, int top, int width, int height
支持方法:
Close(), Destroy(), Max([bolean Variable]), Min([bolean Variable]),
MoveTo(int x, int y), ResizeTo(int x, int y), SetContent(string Variable | htmlObject Variable)
SetTitle(string Variable), ShowHide()
*/

//**载入CSS*****
var xWinCssFilePath="sp\/css\/xwin.css";
//document.write("@import url("+xWinCssFilePath+");");

//**检测浏览器种类*****
var BROWSERNAME="";
switch(navigator.appName.toLowerCase()){
case "netscape":
BROWSERNAME="ns";
break;
case "microsoft internet explorer":
default:
BROWSERNAME="ie";
break;
}

//**设置初始化变量******
switch(BROWSERNAME){
case "ns":
window.addEventListener("load",_xWin_init,false);
break;
case "ie":
default:
window.attachEvent("onload",_xWin_init);
}

//**设置全局定时器******
if(typeof(__xSeriaTimer__)=="undefined"){
var __xSeriaTimer__={
events:new Array(),
objs:new Array(),
handle:null,
exec:function(){
for(var i=0;igetParentRect(this).mh){
this.MoveTo(w*(i%n),mh-t*h-200);
mh=getParentRect(this).mh;
this.MoveTo(w*(i%n),mh-t*h-1);
}
this.minIndex=i;
this.oTitleMButton.value = this.normalButton;
this.oTitleMaButton.value = this.maxButton;
this._windowState="minimize";
if(this.minTimeHandle==null){
this.minTimeHandle=__xSeriaTimer__.push("Min(true)",this);
this.scrollIntoView();
}
}
}

function _xWin_method_MoveTo(x,y){
var win = this.oTitle.parentNode;
var sha = win.nextSibling;

x=isNaN(x)?0:parseInt(x);
y=isNaN(y)?0:parseInt(y);
x=x

width="400" height="400" top="300" left="100" title="我就是传说中那个超长的窗口标题"
我就是传说中那个超长的窗口标题我就是传说

width="100" top="20" left="20" title="我就是传说中那个超长的窗口标题"
中那个超长的窗口标题我就是传说中那个超
长的窗口标题我就是传说中那个超长

的窗口标题我就是传说中那个超长的窗口标题我就是传说中那个超长的窗口标题我就是传说中那个超长的窗口标题
我就是传说中那个超长的

width="100" top="40" left="40" title="我就是传说中那个超长的窗口标题"
中那个超长的窗口标题我就是传说中那个超
长的窗口标题我就是传说中那个超长

窗口标题我就是传说中那
个超长的窗口标题我就是传说中那个超长的窗口标题我就是传说中那个超长的窗口标题我就是传说中那
个超长的窗口标题我就是传说中那个超长的窗口标题
c

12345

width="200" top="270" left="140" title="我就是传说中那个超长的窗口标题"
我是窗口2

我是窗口2

我是窗口2

我是窗口2

更换标题
我是窗口2

我是窗口2

我是窗口2

我是窗口2

win1
win2
win3
win4

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

当前1/2页 12下一页阅读全文

(0)

相关推荐

  • xWin之JS版(2-26更新)第1/2页

    俺最近似乎在反反复复的折腾xWin....希望版主不要打我....... 之所以又开一帖是因为上一贴的侧重点在htc上,俺现在决定抛弃这个很有前途的东西,把侧重点放到兼容性上,开发一个x系列. So 大家把那个HTC的忘记了吧........ 目前的代码兼容IE6.0 & FF 1.5 (因为俺以前一直都是IE Only, 所以转头研究兼容性实在是水平有限,目前的代码在FF上还是有许多Bug.....伤心啊) 构思中的x系列都是采用JS, 在JS中导入相应的css, 使用的时候还是一样简便: 一

  • xWin之JS版

    目前代码应该没什么bug了,兼容IE6.0 & FF 1.5, 通过xHTML 的Transitional验证和 CSS 验证. 为了能通过验证,只好再次改变使用的方式,改为用DIV实现,方法: 复制代码 代码如下: <div class="xWin">  <span class="xWinSetting"> width="200" top="270" left="140" 

  • JS版元素周期表实现方法

    本文实例讲述了JS版元素周期表实现方法.分享给大家供大家参考.具体如下: 这里的元素周期表基于JavaScript实现,未使用任何的图片,直接浏览本HTML网页即可看到效果,可以作为教学使用. 运行效果如下图所示: 具体代码如下: <html> <head> <style type="text/css"> <!-- A{color:000000;font-size:9pt; TEXT-DECORATION: none} A:hover{colo

  • js版扫雷游戏

    本文实例为大家分享了js版扫雷游戏的具体代码,供大家参考,具体内容如下 界面 考虑到简单,一般,困难三个扫雷区域的格子数都不同,所以界面上的扫雷区域是用js动态生成.先搭好整体html框架: <div class="container">         <div class="level">             <button class="select">简单</button>       

  • 限制字符输入数功能(jquery版和原生JS版)

    已知BUG: Ubuntu系统下, onkeyup事件失效,详见: Ubuntu系统下onkeyup/onkeydown对中文输入失效bug. 查看演示: 点此查看DEMO 核心代码: 复制代码 代码如下: //原生JavaScript版本 window.onload=function(){ var js=document.getElementById('js');//获取文本域 var info=document.getElementsByTagName('p')[0];//获取要插入提示信息

  • IIS日志清理(CMD版,VBS版,JS版,WSH版)

    应用场合:主要用与虚拟主机,也可用于个人服务器 产生背景:2005 年某月某日,一向运行正常的虚拟主机死机了,让机房值班人员重启数次,都不成,接显示器进系统看,提示:C盘空间不足,半夜还得去机房处理,到机房后先断网,再进系统发现有两个地方有问题,C:\WINDOWS\system32\LogFiles文件有6G,还有一个就是Symantec隔离病毒的地方,到网上找了下,最大可能性是我们的虚拟主机的所有日志都写在这里,并且没人知道写在这里,郁闷,在IIS里看了下,还真是这么回事,日志天天都在长,当

  • ASP.NET中日历控件和JS版日历控件的使用方法(第5节)

    今天小编带大家以做任务的形式了解ASP.NET中日历控件的使用方法,主要任务内容: 1.添加一个日历,设置日期以蓝色的完整名称显示,周末以黄色背景红色文字显示,而当前日期使用绿色背景显示,用户可以选择一天.一周或整个月,被选的天/周/月使用灰色背景色来显示.当选中一个日期后,把时间显示在下面的一个文本框中,效果如图所示: 2.设计一个注册页面,使用js日历控件帮助用户输入出生日期.效果如图所示: 学习项目一  Calendar日历控件 1.在站点下创建一个Calendar页面,并在页面上拖放一个

  • JS版微信6.0分享接口用法分析

    本文实例讲述了JS版微信6.0分享接口用法.分享给大家供大家参考,具体如下: 为了净化网络,整顿诱导分享及诱导关注行为,微信于2014年12月30日发布了<微信公众平台关于整顿诱导分享及诱导关注行为的公告>,微信平台开发者发现,原有的微信分享功能不能用了.正在苦于微信分享该怎么解决时,微信于2015年1月10日即时发布了开放JS-SDK,为微信网站的开发提供了强大的js功能. 注: 1.微信JS-SDK,提供的分享接口仅是监听分享事件触发时,修改分享的标题.链接等.不能自定义触发分享事件 2.

  • 一种基于浏览器的自动小票机打印实现方案(js版)

    1.使用场景 用户在浏览器做了某项操作后,自动打印小票. 2.测试方式 2.1 JavaScript实现 尝试了很多办法,最终都会出现一个弹出框,让用户选择打印机.不符合我们需求. 2.2 lodop 功能比较强大,但是收费的.暂不考虑. 2.3 PAZU 功能也很强大,免费许可.非常赞! 详情:http://www.4fang.net/article/tech/pazu_tprinter.html 实现过程: 2.3.1 打印详情页面 <!doctype html> <html>

  • js随机生成26个大小写字母

    首先为大家介绍js生成26个大小写字母,主要用到 str.charCodeAt()和 String.fromCharCode()方法 1.使用 charCodeAt()来获得字符串中某个具体字符的 Unicode 编码. 2.fromCharCode()可接受一个(或多个)指定的 Unicode 值,然后返回对应的字符串. //生成大写字母 A的Unicode值为65 function generateBig_1(){ var str = []; for(var i=65;i<91;i++){

随机推荐