📄 script.js
字号:
}
}
function _IBSetD()
{
obj=this.ChgState( gFaceClr,gFaceClr,0 )
obj.style.posTop=0
}
function _IBSetE( state )
{
var t=this
GetObj( t.mBorderId ).style.visibility="visible"
if( state != t.mIsOn ) {
t.mIsOn=state
if( state )
t.SetInactive()
else
t.SetDisabled()
}
}
function _IBP()
{
var t=this
if( t.mIsOn ) {
if( t.UserAction != null )
t.UserAction()
if( t.ChangeIcon ) {
obj=GetObj(t.mObjId)
if( t.ChangeIcon() )
obj.style.posLeft=obj.style.posLeft+(t.mCurState-4)*t.mWidth
else
obj.style.posLeft=obj.style.posLeft+(t.mCurState-0)*t.mWidth
}
t.SetActive()
}
}
function _IBUI( clr1,clr2,nextState )
{
var t=this
SetBorder( GetObj( t.mBorderId ),clr1,clr2 )
obj=GetObj( t.mObjId )
obj.style.posLeft=obj.style.posLeft+(t.mCurState-nextState)*t.mWidth-obj.style.posTop
t.mCurState=nextState
return obj
}
//-----------------------------------------
function TxtBtn( oId,oeId,action,chkState )
//-----------------------------------------
{
var t=this
t.Perform = _TBP
t.SetActive = _TBSetA
t.SetInactive= _TBSetI
t.SetPressed = _TBSetP
t.SetDisabled= _TBSetD
t.SetEnabled = _TBSetE
t.GetState = chkState
t.UserAction = action
t.ChgState = _TBUI
t.mObjId = oId
t.m_elementsId= oeId
t.mIsOn = 1
}
function _TBSetA()
{
var t=this
if( t.mIsOn && !t.GetState() )
t.ChgState( gHiliteClr,gShadowClr,0,0 )
}
function _TBSetI()
{
var t=this
if( t.mIsOn && !t.GetState() )
t.ChgState( gFaceClr,gFaceClr,0,0 )
}
function _TBSetP()
{
if( this.mIsOn )
this.ChgState( gShadowClr,gHiliteClr,1,1 )
}
function _TBSetD()
{
this.ChgState( gFaceClr,gFaceClr,0,0 )
this.mIsOn = 0
}
function _TBSetE()
{
var t=this
if( !t.GetState() )
t.ChgState( gFaceClr,gFaceClr,0,0 )
else
t.ChgState( gShadowClr,gHiliteClr,1,1 )
t.mIsOn = 1
}
function _TBP()
{
var t=this
if( t.mIsOn ) {
if( t.UserAction != null )
t.UserAction()
if( !t.GetState )
return
if( t.GetState() )
t.SetPressed()
else
t.SetActive()
}
}
function _TBUI( clr1,clr2,lOffset,tOffset )
{
SetBorder( GetObj( this.mObjId ),clr1,clr2 )
Offset( GetObj( this.m_elementsId ),lOffset,tOffset )
}
function Offset( obj, top, left ){ obj.style.top=top; obj.style.left=left }
function SetBorder( obj, upperLeft, lowerRight )
{
s=obj.style;
s.borderStyle = "solid"
s.borderWidth = 1
s.borderLeftColor = s.borderTopColor = upperLeft
s.borderBottomColor= s.borderRightColor = lowerRight
}
function GetBtnObj(){ return gBtnArr[window.event.srcElement.id] }
function BtnOnOver(){ b=GetBtnObj(); if( b != null ) b.SetActive() }
function BtnOnDown(){ b=GetBtnObj(); if( b != null ) b.SetPressed() }
function BtnOnOut(){ b=GetBtnObj(); if( b != null ) b.SetInactive() }
function BtnOnUp()
{
b=GetBtnObj()
if( b != null )
b.Perform()
else
Upd()
}
function GetNtsState(){ return parent.gNtsOpen }
function GetOtlState(){ return parent.gOtlOpen }
function GetOtlTxtState(){ return parent.gOtlTxtExp }
function NtsBtnSetFlag( fVal )
{
s=document.all.item( this.m_flagId ).style
s.display="none"
if( fVal )
s.display=""
else
s.display="none"
}
function _BSetA_Border(){ b = gBtnArr[this.mObjId]; if( b != null ) b.SetActive() }
function _BSetI_Border(){ b = gBtnArr[this.mObjId]; if( b != null ) b.SetInactive() }
function _BSetP_Border(){ b = gBtnArr[this.mObjId]; if( b != null ) b.SetPressed() }
function _BSetA_BorderImg()
{
b = gBtnArr[this.mBorderId]
if( b != null && this.mIsOn && !b.GetState() ) {
obj=this.ChgState( gHiliteClr,gShadowClr,2 )
obj.style.posTop=0
}
}
function _BSetI_BorderImg()
{
b = gBtnArr[this.mBorderId]
if( b != null && this.mIsOn && !b.GetState() ) {
obj=this.ChgState( gFaceClr,gFaceClr,1 )
obj.style.posTop=0
}
}
var gHiliteClr="THREEDHIGHLIGHT",gShadowClr="THREEDSHADOW",gFaceClr="THREEDFACE"
var gBtnArr = new Array()
gBtnArr["nb_otl"] = new TxtBtn( "nb_otl","nb_otlElem",parent.ToggleOtlPane,GetOtlState )
gBtnArr["nb_otlElem"] = new TxtBtn( "nb_otl","nb_otlElem",parent.ToggleOtlPane,GetOtlState )
gBtnArr["nb_nts"] = new ImgBtn( "nb_nts","nb_ntsBorder",10,parent.ToggleNtsPane )
gBtnArr["nb_nts"].SetActive = _BSetA_BorderImg;
gBtnArr["nb_nts"].SetInactive = _BSetI_BorderImg;
gBtnArr["nb_ntsBorder"] = new TxtBtn( "nb_ntsBorder","nb_ntsElem",parent.ToggleNtsPane,GetNtsState )
gBtnArr["nb_ntsElem"] = new TxtBtn( "nb_ntsBorder","nb_ntsElem",parent.ToggleNtsPane,GetNtsState )
gBtnArr["nb_prevBorder"] = gBtnArr["nb_prev"]= new ImgBtn( "nb_prev","nb_prevBorder",30,parent.GoToPrevSld )
gBtnArr["nb_nextBorder"] = gBtnArr["nb_next"]= new ImgBtn( "nb_next","nb_nextBorder",30,parent.GoToNextSld )
gBtnArr["nb_sldshw"]= new ImgBtn( "nb_sldshw","nb_sldshwBorder",18,parent.FullScreen )
gBtnArr["nb_sldshwBorder"] = new TxtBtn( "nb_sldshw","nb_sldshwBorder",parent.FullScreen,null )
gBtnArr["nb_sldshwBorder"].SetActive = _BSetA_Border;
gBtnArr["nb_sldshwBorder"].SetInactive = _BSetI_Border;
gBtnArr["nb_sldshwText"] = new TxtBtn( "nb_sldshw","nb_sldshwText",parent.FullScreen,null )
gBtnArr["nb_sldshwText"].SetActive = _BSetA_Border;
gBtnArr["nb_sldshwText"].SetInactive = _BSetI_Border;
gBtnArr["nb_voice"] = gBtnArr["nb_voiceBorder"] = new ImgBtn( "nb_voice","nb_voiceBorder",18,parent.ToggleVNarration )
gBtnArr["nb_otlTxtBorder"] = gBtnArr["nb_otlTxt"]= new ImgBtn( "nb_otlTxt","nb_otlTxtBorder",23,parent.ToggleOtlText )
gBtnArr["nb_ntsBorder"].m_flagId= "nb_nts"
gBtnArr["nb_ntsBorder"].SetFlag = NtsBtnSetFlag
gBtnArr["nb_otlTxt"].ChangeIcon= GetOtlTxtState
/*********************************************
Context menu implementation
_CM() is the function that's hooked up to
the oncontextmenu event. Once we're asked to
show the menu, we first build it by creating
DIVs on-the-fly. Then we position it
within the screen area so it doesn't get
clipped.
Creating the DIVs using createElement() means
we don't have to write out any extra HTML
into the slide HTML files.
**********************************************/
var sNext="下一步",sPrev="上一步",sEnd="结束放映",sFont="宋体",sArrow="箭头",sFreeform="任意形状",sRect="矩形",sOval="椭圆"
function ShowMenu()
{
BuildMenu();
var doc=PPTSld.document.body,x=PPTSld.event.clientX+doc.scrollLeft,y=PPTSld.event.clientY+doc.scrollTop
m = PPTSld.document.all.item("ctxtmenu")
m.style.pixelLeft=x
if( (x+m.scrollWidth > doc.clientWidth)&&(x-m.scrollWidth > 0) )
m.style.pixelLeft=x-m.scrollWidth
m.style.pixelTop=y
if( (y+m.scrollHeight > doc.clientHeight)&&(y-m.scrollHeight > 0) )
m.style.pixelTop=y-m.scrollHeight
m.style.display=""
}
function _CM()
{
if( !parent.IsFullScrMode() ) return;
if(!PPTSld.event.ctrlKey) {
ShowMenu()
return false
} else
HideMenu()
}
function BuildMenu()
{
if( PPTSld.document.all.item("ctxtmenu") ) return
var mObj=CreateItem( PPTSld.document.body )
mObj.id="ctxtmenu"
mObj.style.visibility="hidden"
var s=mObj.style
s.position="absolute"
s.cursor="default"
s.width="120px"
SetCMBorder(mObj,"menu","black")
var iObj=CreateItem( mObj )
SetCMBorder( iObj, "threedhighlight","threedshadow" )
iObj.style.padding=2
CreateMenuItem( iObj,sNext,M_GoNextSld,M_True )
CreateMenuItem( iObj,sPrev,M_GoPrevSld,M_HasPrevSld )
CreateSeparator( iObj )
CreateMenuItem( iObj,sEnd,M_End,M_True )
mObj.style.visibility="visible"
}
function Cancel() { window.event.cancelBubble=true; window.event.returnValue=false }
function Highlight() { ChangeClr("activecaption","threedhighlight") }
function Deselect() { ChangeClr("threedface","menutext") }
function Perform()
{
e=PPTSld.event.srcElement
if( e.type=="menuitem" && e.IsActive() )
e.Action()
else
PPTSld.event.cancelBubble=true
}
function ChangeClr( bg,clr )
{
e=PPTSld.event.srcElement
if( e.type=="menuitem" && e.IsActive() ) {
e.style.backgroundColor=bg
e.style.color=clr
}
}
function M_HasPrevSld() { return( parent.HasPrevSld() ) }
function M_GoNextSld() { if( gIsEndShow ) M_End(); else GoToNextSld() }
function M_GoPrevSld() { if( gIsEndShow ) { gIsEndShow=0; history.back(); PPTSld.event.cancelBubble=true; } else GoToPrevSld() }
function M_True() { return true }
function M_End() { window.close( self ) }
function CreateMenuItem( node,text,action,eval )
{
var e=CreateItem( node )
e.type="menuitem"
e.Action=action
e.IsActive=eval
e.innerHTML=text
if( !e.IsActive() )
e.style.color="threedshadow"
e.onclick=Perform
e.onmouseover=Highlight
e.onmouseout=Deselect
s=e.style;
s.fontFamily=sFont
s.fontSize="9pt"
s.paddingLeft=2
}
function CreateSeparator( node )
{
var sObj=CreateItem( node )
SetCMBorder(sObj,"menu","menu")
var s=sObj.style
s.borderTopColor="threedshadow"
s.borderBottomColor="threedhighlight"
s.height=1
s.fontSize="0px"
}
function CreateItem( node )
{
var elem=PPTSld.document.createElement("DIV")
node.insertBefore( elem )
return elem
}
function SetCMBorder( o,ltClr,rbClr )
{
var s=o.style
s.backgroundColor="menu"
s.borderStyle="solid"
s.borderWidth=1
s.borderColor=ltClr+" "+rbClr+" "+rbClr+" "+ltClr
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -