FireFox 使用JS修改状态栏。。
嗯(⊙_⊙) 同学发来的一段js,在firefox下面修改不了状态栏,tt和ie完好?
-
<script type="text/javascript">
-
alert("这是一个JavaScript程序");
-
window.status="欢迎来到JavaScript的世界";
-
</script>
百度说ff默认不支持。。请大家点击工具-选项-内容,在启用JS后面的高级选项中,勾选修改状态栏内容 即可~
jQuery插件:suggest
使input框自动提示的插件……
主页:http://www.vulgarisoip.com/2007/08/06/jquerysuggest-11/
直接在需要让你的input自动提示的页面导入js即可~
jQuery插件:tablesorter
一个可以将thead中的th当成排序项,将tbody中的td排序的插件……而且支持多列排序~
Demo都写得很清晰了~ 有几个小用法记一下……:
-
$("#list").tablesorter( {
-
widgets: ['zebra'],
-
headers: {
-
0:{sorter: false},
-
4:{sorter: false}
-
}
-
} );
widgets为zebra时表示斑马线,即表格会出现交错背景色效果。
headers里面0表示第1行,sorter:false表示该行不参与排列。
还有很多用法,没用到就先不研究啦 > <
ajax请求时读缓存的问题
当url一样时ajax就会读取缓存中的值 真囧。
百度说,在url中加上一个随机值即可。试了一下用时间,果然OK~
alert(data);
});
还有数学的Math.random()也可以产生随机数……
EXT.Window大小随机变化问题解决
晚上突然各个窗体打开大小不正常,最后发现是早上刚加上的stateManager的关系,
窗体读取缓存中的大小显示,囧。
最后百度到解决方案,
定义它的stateful属性为false即不被stateManager管理~
EXT 状态保存
在EXT.onReady中设置
不知道是啥 也许是监听器的意思吧 = =
CookieProvider表示它是根据Cookies有效期限保存的么???
然后在你的类里加上
this.getState = function() {return{tab:this.getActiveTab().id}}
this.applyState = function(state) {this.setActiveTab(state.tab);}
stateEvents表示状态事件(数组)。
这里只用了一个切换tab的。
getState方法中可以写切换tab时执行的内容,比如保存……这里没有写。
applyState貌似可以隐式调用 就不测试了
详细请搜索下EXT 状态保存。
JavaScript 页面打印和预览
1. 页面打印
2. 页面局部打印
在之前的基础上,加上
.noprint{display : none }
</style>
定义,表示class为noprint的代码在打印将不被显示。
之后将不需要打印的内容放入class为print的容器中即可。
3. 通过IE组件 WebBrowser 实现打印
首先获得控件
之后调用相应功能:
WebBrowser1.ExecWB(7,1); // 打印预览
WebBrowser1.ExecWB(8,1); // 打印设置
其他百度来的
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1) 保存网页
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印预览
Web.ExecWB(8,1) 打印页面设置
Web.ExecWB(10,1) 查看页面属性
Web.ExecWB(15,1) 好像是撤销,有待确认
Web.ExecWB(17,1) 全选
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 关闭窗体无提示
不打印的方法同2。
4. 还是JS,这次是选中部分打印。
百度来的:
if (oper < 10){
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
} else {
window.print();
}
}
而要打印的内容放在<!--startprint1-->和<!--endprint1-->之间即可。调用preview(1),
这样可以设定多个部分打印不同内容,oper值自己根据需要指定。
使用DWR添加行中列表
rt……想不出什么方法,我在列表显示的col那里return列表ID,之后的列里才调用增加option及设置默认选项的方法。
-
function loadPhotoList(){
-
photoManager.getPhotoList(displayPhotoList);
-
}
-
-
function displayPhotoList(photoList){
-
DWRUtil.removeAllRows("PhotoListTable");
-
var photo = photoList;
-
DWRUtil.addRows("PhotoListTable",photo,[
-
function(photo){return "<select name='albumid" + photo.imgID + "'></select>";},
-
function(photo){
-
displayAlbumList(photo.imgID, photo.albumID); // here
-
return "<center>" +
-
"<input type='button' value='修改' onclick='editPhoto(" + photo.imgID + ")'>" +
-
" " +
-
"<input type='button' value='删除' onclick='deletePhoto(" + photo.imgID + ")'>" +
-
"</center>";
-
}
-
]);
-
}
-
-
function displayAlbumList(imgid, albumid){
-
albumManager.getAlbumList(function(albumList){
-
DWRUtil.removeAllOptions("albumid" + imgid);
-
DWRUtil.addOptions("albumid" + imgid,albumList, "id", "title");
-
DWRUtil.setValue("albumid" + imgid, albumid);
-
});
-
}