?? script.js
字號:
function GoToPrevSld()
{
ii=gCurSld-1
if( ii > 0 ) {
obj=GetHrefObj(ii)
while ( obj && ( obj.mVis == 0 ) && ( ii>0 ) )
obj=GetHrefObj(--ii)
if( ii == 0 ) ii=1
GoToSldNum(ii)
}
}
function GoToFirst(){ GoToSld( GetHrefObj(1).mSldHref ) }
function GoToLast()
{
ii=GetSldList().mList.length
if( ii != gCurSld )
GoToSld( GetHrefObj(ii).mSldHref )
}
function GoToSldNum( num )
{
if( PPTSld.event ) PPTSld.event.cancelBubble=true
obj = GetHrefObj( num )
obj.mVis=1
gPrevSld=gCurSld
gCurSld = num;
PPTSld.location.replace(MHTMLPrefix+obj.mSldHref)
if( IsFramesMode() ) {
UpdNavPane(); UpdOtlPane(); UpdNtsPane()
}
}
function GoToSld( href )
{
if( PPTSld.event ) PPTSld.event.cancelBubble=true
GetHrefObj( GetSldNum(href) ).mVis=1
PPTSld.location.replace(MHTMLPrefix+href)
}
function SldUpdated( id )
{
if( id == GetHrefObj(gCurSld).mSldHref ) return
gPrevSld=gCurSld
gCurSld=GetSldNum(id)
if( IsFramesMode() ) {
UpdNavPane(); UpdOtlPane(); UpdNtsPane()
}
}
function PrevSldViewed(){ GoToSld( GetHrefObj(gPrevSld).mSldHref ) }
function HasPrevSld() { return ( gIsEndShow || ( gCurSld != 1 && GetHrefObj( gCurSld-1 ).mVis == 1 )||( GetCurSldNum() > 1 ) ) }
function HasNextSld() { return (GetCurSldNum() != GetNumSlds()) }
function CloseWindow() {
if( HideMenu() ) return;
var event = PPTSld.event;
if( !IsFramesMode() && event && (event.keyCode==27 || event.keyCode==32 || event.type=="click" ) )
window.close( self );
CatchNumKeys( self, event );
}
function Unload() { gIsEndShow=0; }
function SetupEndShow() {
gIsEndShow=1;
PPTSld.document.body.scroll="no";
PPTSld.document.onkeypress=CloseWindow;
PPTSld.document.onclick=CloseWindow;
PPTSld.document.oncontextmenu=_CM;
}
function EndShow()
{
if( IsFramesMode() ) return
if( PPTSld.event ) PPTSld.event.cancelBubble=true
doc=PPTSld.document
doc.open()
doc.writeln('<html><body bgcolor=black onload=parent.SetupEndShow() onunload=parent.Unload()><center><p><font face=Tahoma color=white size=2><br><b>' + ENDSHOW_MESG + '</b></font></p></center></body></html>')
doc.close()
}
function SetSldVisited(){ GetSldList().mList[gCurSld-1].mVisited=true }
function IsSldVisited(){ return GetSldList().mList[gCurSld-1].mVisited }
function hrefList( sldHref, visible, advDelay, advClk )
{
this.mSldHref= this.mNtsHref = sldHref
this.mOrigVis= this.mVis = visible
this.mVisited= false
this.mAdvDelay= advDelay
this.mAdvOnClk= advClk
}
function SldList(arr,curSld,fEnd)
{
this.mCurSld = curSld;
this.mList = new Array();
var idx = 1;
for(ii=0;ii<arr.length;ii++) {
this.mList[ii] = new hrefList( arr[ii].mSldHref, arr[ii].mOrigVis, arr[ii].mAdvDelay, arr[ii].mAdvOnClk );
if( arr[ii].mOrigVis )
this.mList[ii].mSldIdx = idx++;
}
this.mNumVisSlds = idx-1;
this.fEndShow = fEnd;
}
function GetSldList() { return gSldStack[gSldStack.length-1] }
function GetCurSld() { return parent.GetSldList().mList[parent.gCurSld - 1] }
gSldStack = new Array();
gSldStack[0] = new SldList(gMainDoc,gCurSld,1)
function ViewCustomShow(idx,fEnd)
{
if( !IsFullScrMode() ) return;
var sldList = new Array();
var custShow = custShowList[idx-1];
var jj = 0;
for( ii=0;ii<custShow.length;ii++ ) {
if( custShow[ii] <= gMainDoc.length )
sldList[jj++] = gMainDoc[custShow[ii]-1];
}
if (sldList.length > 0) {
PushSldList(sldList,fEnd);
gCurSld = 1;
}
else
if( PPTSld.event ) PPTSld.event.cancelBubble=true
}
function PushSldList(arr,fEnd) {
var ii = gSldStack.length;
gSldStack[ii] = new SldList(arr,gCurSld,fEnd);
GoToSld( gSldStack[ii].mList[0].mSldHref );
}
function PopSldList() {
if (gSldStack[gSldStack.length-1].fEndShow)
EndShow()
else {
gCurSld = gSldStack[gSldStack.length-1].mCurSld;
gSldStack[gSldStack.length-1] = null;
gSldStack.length--;
var sldList = gSldStack[gSldStack.length-1];
GoToSld( sldList.mList[gCurSld - 1].mSldHref );
}
}
var custShowList=new Array();
function ImgBtn( oId,bId,w,action )
{
var t=this
t.Perform = _IBP
t.SetActive = _IBSetA
t.SetInactive= _IBSetI
t.SetPressed = _IBSetP
t.SetDisabled= _IBSetD
t.Enabled = _IBSetE
t.ChangeIcon = null
t.UserAction = action
t.mObjId = oId
t.mBorderId= bId
t.mWidth = w
t.mIsOn = t.mCurState = 0
}
function _IBSetA()
{
if( this.mIsOn ) {
obj=this.ChgState( gHiliteClr,gShadowClr,2 )
obj.style.posTop=0
}
}
function _IBSetI()
{
if( this.mIsOn ) {
obj=this.ChgState( gFaceClr,gFaceClr,1 )
obj.style.posTop=0
}
}
function _IBSetP()
{
if( this.mIsOn ) {
obj=this.ChgState( gShadowClr,gHiliteClr,2 )
obj.style.posLeft+=1; obj.style.posTop+=1
}
}
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() }
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 TxtBtn( "nb_nts","nb_ntsElem",parent.ToggleNtsPane,GetNtsState )
gBtnArr["nb_prev"]= new ImgBtn( "nb_prev","nb_prevBorder",30,parent.GoToPrevSld )
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"] = new ImgBtn( "nb_voice","nb_voiceBorder",18,parent.ToggleVNarration )
gBtnArr["nb_otlTxt"]= new ImgBtn( "nb_otlTxt","nb_otlTxtBorder",23,parent.ToggleOtlText )
gBtnArr["nb_nts"].m_flagId= "notes_flag"
gBtnArr["nb_nts"].SetFlag = NtsBtnSetFlag
gBtnArr["nb_otlTxt"].ChangeIcon= GetOtlTxtState
var sNext="下一步",sPrev="上一步",sEnd="結(jié)束放映",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 ) { 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
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -