2011-01-26 3 views
0

안녕하세요, 저는 많은 문제에 대해 Google에서 검색해 왔으며 항상 여기에서 답변을 찾았습니다. 누군가가이 바보 같은 질문에 답할 수 있기를 바라고 있습니다. 필자는 JavaScript의 초보자이며 Flexpaper를 일부 파일 뷰어로 사용하는 개인 사이트를 만들었으며 사용자가 클릭 할 href를 기반으로 URL을 어떻게 변경할 수 있는지 궁금합니다. . 그럼 내가 iframe이 또는 바로 옆에있는 뷰어를 넣을 계획입니다초보자가 쓴 JavaScript 문제

 var swfVersionStr = "10.0.0"; 
     var xiSwfUrlStr = "playerProductInstall.swf"; 
     var file = "1984.swf"; 
     var flashvars = { 
       SwfFile : escape(file), 
       Parameters here 
       }; 

     var params = { 

      } 
     Parameters and Attributes here 
     swfobject.embedSWF(
      "FlexPaperViewer.swf", "flashContent", 
      "700", "550", 
      swfVersionStr, xiSwfUrlStr, 
      flashvars, params, attributes); 
     swfobject.createCSS("#flashContent", "display:block;text-align:left;");` 

, 다른 측 또는 프레임 링크 : 여기에 Flexpaper 조각입니다.

<a href="books/google search APIs.swf">Google search APIs</a> 

코드의 변수 파일을 변경해야합니다. 네가 나를 도울 수 있기를 바래.

+0

코드를 먼저 분리 할 수 ​​있습니까? – kjy112

+0

현재 URL을 어떻게 결정합니까? –

+0

코드 측면에서 뷰어에 미리로드 된 하나를 엽니 다. 그러나 HREF를 var ..thanx에 연결하는 방법을 찾지 못했습니다. – Odinovsky

답변

0

(swapSwf 이름) 다음과 같은 자바 스크립트 함수 정의보십시오 :

function swapSwf(swfPath) { 
    swfobject.embedSWF(swfPath, "flashContent", "700", "550"); 
} 

그리고 그냥 적절한 javascript: 접두사로 링크에서 사용 :

<a href="javascript:swapSwf('books/google search APIs.swf')">Google search APIs</a> 
0

먼저,에 함수를 사용합니다 다른 파일에 대한 별도의 매개 변수를 전달할 수있는 방식으로 SWF를 만듭니다.

둘째, 앵커 태그에서 함수 끝에 "false"를 반환하고 앵커 태그 내의 onClick 이벤트 처리기에서 "return false"를 사용합니다. 이렇게하면 브라우저 내의 링크를 따라 취소되고 기능이 비즈니스를 수행 할 수있게됩니다 (FlexPaper 문서 변경).

function showFile (swfFile) { 
    var swfVersionStr = "10.0.0"; 
    var xiSwfUrlStr = "playerProductInstall.swf"; 
    var flashvars = { 
      SwfFile : escape(swfFile), 
      Scale : 0.95, 
      ZoomTransition : "easeOut", 
      ZoomTime : 0.5, 
      ZoomInterval : 0.2, 
      FitPageOnLoad : false, 
      FitWidthOnLoad : false, 
      PrintEnabled : true, 
      FullScreenAsMaxWindow : false, 
      ProgressiveLoading : true, 
      MinZoomSize : 0.3, 
      MaxZoomSize : 5, 
      localeChain: "en_US" 
     }; 
    var params = {} 
    params.quality = "high"; 
    params.bgcolor = "#ffffff"; 
    params.allowscriptaccess = "sameDomain"; 
    params.allowfullscreen = "true"; 
    params.wmode = "opaque"; 
    var attributes = {}; 
    attributes.id = "FlexPaperViewer"; 
    attributes.name = "FlexPaperViewer"; 
    swfobject.embedSWF(
     "/FlexPaperViewer.swf", "flashContent", 
     "800", "550", 
     swfVersionStr, xiSwfUrlStr, 
     flashvars, params, attributes 
    ); 
    swfobject.createCSS("#flashContent", "display:block;text-align:left;"); 
    return false; 
} 
:

다음, swfFile의 위치와 showFile 기능을 매개 변수로 전달됩니다

<a href="books/google search APIs.swf" onClick="return showFile(this.href);">Google search APIs</a> 

(테스트해야합니다, 그래서 나는 다음을 확인하지 않은 경우)

+0

답장을 보내 주셔서 감사합니다.하지만 이로 인해 시청자가 실속합니다. – Odinovsky