wayne's blog

在一秒钟的时间里,也可以突然很感动!~

  DonewsBlog  |  Donews首页  |  Donews社区  |  Donews邮箱  |  我的首页  |  联系作者  |  聚合   |  登录
  139篇文章 :: 0篇收藏:: 54篇评论:: 1个Trackbacks

公告


使用 POTU 订阅!


Subscribe in My MSN

文章

收藏

相册

友情

存档


正在读取评论……


2006年12月



    摘要:

<meta http-equiv="Content-Type" Content="text/html; charset=utf-8">
<textarea wrap="off" onmouseover=
"alert(' clientWidth:'+this.clientWidth+
'\n offsetWidth:'+this.offsetWidth+'\n scrollWidth:'+this.scrollWidth);">
11111111111111111111111111111
< /textarea>
clientWidth是对象看到的宽度(不含边线)
offsetWidth是对象看到的宽度(含边线,如滚动条的占用的宽,值会随着内容的输入而不断改变)
scrollWidth是对象实际内容的宽度。

手册里面说的并不是很清楚,可以根据上面的例子加深理解。

    (全文共499字)——点击此处阅读全文



//创建text fields
this.createTextField ("name_txt", 1, 5, 5, 75, 20);
this.createTextField ("age_txt", 2, 5, 30, 75, 20);
this.createTextField ("list_txt", 3, 5, 55, 75, 50);
//设置text fields的属性
name_txt.border = true;
age_txt.border = true;
list_txt.border = true;
list_txt.multiline = true;
list_txt.wordWrap = true;
list_txt.html = true;
//创建一个函数
function showName (theInfo:String):Void
{
     var info_array:Array = theInfo.split ("~");
     name_txt.text = info_array[0];
     age_txt.text = info_array[1];
}
//设置文本到文本框里
list_txt.htmlText = "<a href=asfunction:showName,e路信峰~22>e路信峰</a><br>";
list_txt.htmlText += "<a href=asfunction:showName,.Renascence~22>.Renascence</a><br>";
list_txt.htmlText += "<a href=asfunction:showName,圆号手~30>圆号手</a>";




    摘要:

我在Flash中新建一个按钮。使用两个方法,getURL和LoadVars.send()得到的效果一样。
LoadVars.send()方法:

on (press) {
var my_data:LoadVars = new LoadVars();
my_data.frommail = "youmail@any.com";
my_data.tomail = "receivermail@any.com";
my_data.mailsubject = "asd";
my_data.mailbody = "asdasdasd";
my_data.MailType = "1";
my_data.send("main.php?action=send", "_self", "POST");
}


getUR    (全文共779字)——点击此处阅读全文




本教程主要介绍HTML网页如何取得形如test.html?foo=mytest的foo参数,以及在HTML网页中如何向swf传递参数。

一、在HTML网页中使用js获取参数。
我们知道HTML页面是在客户端执行的,这样要获取参数必须使用客户端脚本(如JavaScript),在这点上不同于服务器端脚本获取参数方式。
下面的这段js代码获取HTML网页形如"test.html?foo=mytest&program=flash" "?"后所有参数。
<script language=javascript>
<!--
var hrefstr,pos,parastr;
hrefstr = window.location.href;
pos = hrefstr.indexOf("?");
parastr = hrefstr.substring(pos+1);
if (pos>0){
document.write("所有参数:"+parastr);
} else {
document.write("无参数");
}
//-->
</script>


下面的这段js代码则可以更加细化获取HTML网页某一参数
<script language=javascript>
<!--
function getparastr(strname) {
var hrefstr,pos,parastr,para,tempstr;
hrefstr = window.location.href;
pos = hrefstr.indexOf("?")
parastr = hrefstr.substring(pos+1);

para = parastr.split("&");
tempstr="";
for(i=0;i<para.length;i++)
{
 tempstr = para[i];
 pos = tempstr.indexOf("=");
 if(tempstr.substring(0,pos) == strname) {
  return tempstr.substring(pos+1);
 }
}
return null;
}
// 获取program参数
var programstr = getparastr("program");
document.write(programstr);
//-->
</script>


二、在HTML网页中向swf传递参数。
方法一:在网页中使用js,SetVariable设置flashobject中的变量,代码如:
// "HtmlToSwf"为网页中的flashobject ID
HtmlToSwf.SetVariable("_root.info_str","Happy Newyear");

方法二:路径参数,如test.swf?foo=happy2005
方法三:使用FlashVars,以下主要介绍FlashVars的用法。使用FlashVars后嵌入HTML的flashobject代码如下:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="550" height="400" id="FlashVars" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="FlashVars.swf" />
<param name="FlashVars" value="foo=happy2005&program=flash&language=简体中文-中国" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="FlashVars.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="FlashVars" align="middle" allowScriptAccess="sameDomain" FlashVars="foo=happy2005&program=flash&language=简体中文-中国" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />


通过上面的代码,在SWF(FlashVars.swf)中就可以直接获取foo、program、language变量数据。FlashVars.fla获取FlashVars参数的代码如下:
// 创建三个文本字段
_root.createTextField("foo_txt",1,0,0,16,16);
_root.createTextField("program_txt",2,0,32,16,16);
_root.createTextField("language_txt",3,0,64,16,16);
foo_txt.autoSize = true;
foo_txt.border = true;
program_txt.autoSize = true;
program_txt.border = true;
language_txt.autoSize = true;
language_txt.border = true;
// 获取FlashVars变量
foo_txt.text = "HTML中的foo参数:"+foo;
program_txt.text = "HTML中的program参数:"+program;
language_txt.text = "HTML中的language参数:"+language;


三、两者的有效结合。
在HTML网页中使用js获取参数,然后将获取的参数作为FlashVars写入flashobject传递给swf。代码如下:
<script language=javascript>
<!--
function writeflashobject(parastr) {
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0\" width=\"550\" height=\"400\" id=\"FlashVars\" align=\"middle\"\>\n");
document.write("<param name=\"allowScriptAccess\" value=\"sameDomain\" /\>\n");
document.write("<param name=\"movie\" value=\"FlashVars.swf\" /\>\n");
document.write("<param name=\"FlashVars\" value=\""+ parastr +"\" /\>\n");
document.write("<param name=\"quality\" value=\"high\" /\>\n");
document.write("<param name=\"bgcolor\" value=\"#ffffff\" /\>\n");
document.write("<embed src=\"FlashVars.swf\" quality=\"high\" bgcolor=\"#ffffff\" width=\"550\" height=\"400\" name=\"FlashVars\" align=\"middle\" allowScriptAccess=\"sameDomain\" FlashVars=\""+ parastr +"\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" /\>");
document.write("</object\>");
}
function getparastr() {
var hrefstr,pos,parastr,para,tempstr1;
hrefstr = window.location.href;
pos = hrefstr.indexOf("?")
parastr = hrefstr.substring(pos+1);
return parastr;
}
var parastr = getparastr();
writeflashobject(parastr);
//-->
</script>



Play() ---------------------------------------- 播放动画 
StopPlay()------------------------------------停止动画 
IsPlaying()----------------------------------- 动画是否正在播放
GotoFrame(frame_number)---------------- 跳转到某帧 
TotalFrames()------------------------------- 获取动画总帧数 
CurrentFrame()------------------------------回传当前动画所在帧数-1 
Rewind()-------------------------------------使动画返回第一帧 
SetZoomRect(left,top,right,buttom)-------放大指定区域 
Zoom(percent)------------------------------改变动画大小 
Pan(x_position,y_position,unit)------------使动画在x,y方向上平移 
PercentLoaded()----------------------------返回动画被载入的百分比 
LoadMovie(level_number,path)----------- 加载动画 
TGotoFrame(movie_clip,frame_number)- movie_clip跳转到指定帧数 
TGotoLabel(movie_clip,label_name)------ movie_clip跳转到指定标签 
TCurrentFrame(movie_clip)--------------- 回传movie_clip当前帧-1 
TCurrentLabel(movie_clip)-----------------回传movie_clip当前标签 
TPlay(movie_clip)---------------------------播放movie_clip 
TStopPlay(movie_clip)----------------------停止movie_clip的播放 
GetVariable(variable_name)-----------------获取变量 
SetVariable(variable_name,value)-----------变量赋值 
TCallFrame(movie_clip,frame_number)---call指定帧上的action 
TCallLabel(movie_clip,label)----------------call指定标签上的action 
TGetProperty(movie_clip,property)--------获取movie_clip的指定属性 
TSetProperty(movie_clip,property,number)-设置movie_clip的指定属性

其中TGetProperty 和 TSetProperty 的属性是使用数字0-18来获取的,下面是各数字代表的属性:
属性 作用 数字 使用方式

X Position X坐标 0 Get,Set 
Y Position Y坐标 1 Get,Set 
X Scale X方向缩放比率 2 Get,Set 
Y Scale Y方向缩放比率 3 Get,Set 
CurrentFrame movie_clip当前所在帧数 4 Get 
TotalFrames movie_clip总帧数 5 Get 
Alpha movie_clip的透明度 6 Get,Set 
Visibility movie_clip是否可见 7 Get,Set 
Width movie_clip的宽度 8 Get 
Height movie_clip的高度 9 Get 
Rotation movie_clip的旋转度 10 Get,Set 
Target movie_clip的路径 11 Get 
Framesloaded movie_clip已载入的帧数 12 Get 
Name movie_clip的实体名字 13 Get,Set 
DropTarget movie_clip的拖拽 14 Get 
Url 包含movie_clip的动画的url 15 Get 
HighQuality 设置画面质量为高质量 16 Get,Set 
FocusRect 显示按钮边框 17 Get,Set 
SoundBufTime 预设声音缓冲时间 18 Get,Set 

flash调用js:
可以使用fscommand来调用js,但使用getUrl方面更为的方便,比如:getURL("BLOCKED SCRIPTalert('"+ message+ "')");就可以使用js的alert的方法作为调试使用.





    摘要:

  网上也有许多关于flash帧速率的讨论,至今Flash Player的帧速率还有一些令人费解的问题。
  Flash使用“相对定时模型”(relative timing model),这意味着它并不考虑全局的帧速率问题,只是尽可能地强制保持帧间隔时间。假设你设置影片速率为30帧/秒,这就意味着Flash Player要在帧间等待33毫秒(包括处理帧内容的时间),这种不精确的定时方法导致了许多问题。首先Flash Player依赖高级的操作系统级事件传递定时信息。最坏的情况下使用基于NetScape plugin API 的WM_TIMER,或者最好的情况下使用Internet Explorer API提供的多媒体时钟。第二,因为windows或者MacOS使用的最小时间单位是毫秒,所以只能近似到毫秒的帧间隔单位。第三,操作系统、浏览器、Flash Player在执行帧上的脚本时还会有额外的开销,所以最终的实际帧速率在设计帧速率上有-10到+5帧/秒的浮动,因此系统环境的性能影响很大。
  下面来讨论一下最大的帧速率。在IE中理论上是    (全文共1241字)——点击此处阅读全文





    摘要:Flash调用页面中的javascript函数在做一些flash操作页面DOM的应用的时候很有用,在flash actionscript中调用javascript中的函数方法有两个:
  • getURL(”javascript:checkit()”)
  • FSCommand(”checkit”,id);

    第一种:getURL()实际上的原理相当于HTML中<a href=”javascirpt:alert(’foobar’);”></a>的调用javascript的方式,相当于一个对本页的一个http请求。
    第二种:FSCommand(”checkit”,id);原理类似于HTML中<a href=”#” onclick=”checkit(1)” ></a>,相当于直接调用。

    这两种方法最大的不同就是前者    (全文共8661字)——点击此处阅读全文





  •     摘要:一、Flex 2.0 中关闭浏览器的方法private function closeIE():void{var request:URLRequest = new URLRequest("javascript:window.close()");navigateToURL(request,"_self");}二、传递接受参数<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"><mx:Script><![CDATA[priv    (全文共1756字)——点击此处阅读全文




        摘要:windows2000开启3389端口:
    c:\>echo [Components] > c:\rock 
    c:\>echo TSEnable = on >> c:\rock 
    c:\>sysocmgr /i:c:\winnt\inf\sysoc.inf /u:c:\rock /q 
    等会系统自动启动后就OK

    windows2003开启3389端口:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server下的dword键fDenyTSConnections值改为dword:00000000(原值dword:00000001)。


    更改3389默认端口号:
    1、HKEY_LOCAL_MACHINE\SYSTEM\C    (全文共716字)——点击此处阅读全文




        摘要:一、系统的安装  

    1、按照Windows2003安装光盘的提示安装,默认情况下2003没有把IIS6.0安装在系统里面。

    2、IIS6.0的安装
      开始菜单—>控制面板—>添加或删除程序—>添加/删除Windows组件
      应用程序 ———ASP.NET(可选)
           |——启用网络 COM+ 访问(必选)
           |——Internet 信息服务(IIS)———Internet 信息服务管理器(必选) 
                          |——公用文件(必选)
                          |——万维网服务———Active Server pages(必选    (全文共2891字)——点击此处阅读全文




        摘要:在Fedora Core 3/4下安装Zend Optimizer后,会出现这样的情况(error log中): Failed loading /usr/local/Zend/lib/ZendExtensionManager.so: /usr/local/Zend/lib/ZendExtensionManager.so: failed to map segment from shared object: Permission denied 在Zend 的支持上看到了此问题在FC3下的原因和解决方案。 原因是由于SELinux的安全策略造成的,过度地保护了httpd进程,他提供了几种解决方案 禁用    (全文共2526字)——点击此处阅读全文