首页 > 设计 > 软件应用 > 正文

DW的动作函数初步分析

2018-10-16 21:05:27
字体:
来源:转载
供稿:网友

弄个简单的好一点:呵呵 以DW提供的call js 动作为例分析一下


这是call js.htm里面的内容这里我也把它拿出来放在一起好看:)

<SCRIPT LANGUAGE="javascript" SRC="Call javascript.js"></SCRIPT>//这个不用说了就是包含我们的call js.js
<SCRIPT LANGUAGE="javascript" SRC="../../Shared/MM/Scripts/CMN/string.js"></SCRIPT>//之里调用DW提供的字符串处理函数

<SCRIPT SRC="../../Shared/MM/Scripts/CMN/displayHelp.js"></SCRIPT>//调用本动作的帮助页面

<SCRIPT LANGUAGE="javascript">

var MSG_NoMsg = "Please enter a javascript command or click Cancel.";

注意上面的jS调用不是都一样的写不同的动作就将用动不同的js(也可以不用)这些东东都放在DW的Shared/MM/Scripts下面。

//****************************************************************
你将要在head头部写入的JS函数
//***************************************************************
function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

以下为API函数也就是DW提供的系统函数
//**********************************************************************************
什么无元素能够接受这个动作,例如交换图片swap imag函数就只有图片才能接收,我们看到的动作面板中有
为什么是灰色的就是因为用了这个函数,因为当前这个对像不存在。
例如:

function canAcceptBehavior(){
var nameArray = getObjectRefs("NS 4.0","document","IMG"); 
var retVal = (nameArray.length>0)?"onMouseOut,(onMouseOut)" : false;
return retVal;
}
接受动作函数:这个函数就用了getobjectRefs()来取得IMG对像,只有当前网页存在图像才能用这个动作,后面的onmouseout为缺损动作。
//*************************************************************************************
function canAcceptBehavior(){
  return true;
}


//*************************************************************************************
动作函数:这里才是真正把你要写入head头部的函数,注意MM_calljs的名字改须与你前面的第一个函数同名,否则出错。
//*************************************************************************************
function behaviorFunction(){
  return "MM_callJS";
}

//*************************************************************************************
运用动作函数:也就是你将要加在标签处的函数。如: 的test部分和args部分。args是你要传递给head头部函数的参数。
//*************************************************************************************
function applyBehavior() {
  var jsStr = escQuotes(document.theForm.message.value);//这里取得面板中的message值即你输入文本框中的值
  if (jsStr == '') {//这里判断如果你没有输入信息将要弹出的警告信息,这个信息在call js.htm是面已经定义的了。
    return MSG_NoMsg;
  } else {
    return "MM_callJS('" + jsStr + "')";//成功写入函数
  }
}

//*************************************************************************************
这个函数为取得你输入的值并保存起来,已便你在下次修改的时候能够看到你上次输入的值,否则就谈不上修改了。
//*************************************************************************************
function inspectBehavior(jsStr){
  var startPos = jsStr.indexOf("(")+2;
  var endPos = jsStr.lastIndexOf(")",jsStr.length)-1;
  document.theForm.message.value = unescQuotes(jsStr.substring(startPos,endPos));//取得"(" 和平共处")" 之间的值,也就是我们输入的值。
}

//***************** LOCAL FUNCTIONS  ******************

//*************************************************************************************
这里是本地函数,不要也可以的,这个函数的意思就是一打开就让文本框聚瞧。

function initializeUI(){
  document.theForm.message.focus(); //set focus on textbox
  document.theForm.message.select(); //set insertion point into textbox
}


这只是我个人的分析结果,可能有错希望大家改正。最近我们公司网速奇慢上不了网所以闲着弄弄,写写?

本文作者:
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表