2012-01-25 15 views
1

リスト内の項目をクリックするとonChangeイベントを使用して自動的に起動するドロップダウンリストを作成しました。これはIE、FF、Chromeで動作します。& OperaではSafariでは起動しません。onChangeは、Safariのドロップダウンリストで発火しない、IE、FF、Chrome&Operaで動作します

同じページに複数のドロップダウンリストが表示されるので、下のコードは1年後の発言ですので、2011年末にはIDの末尾に入力してください。

以下のドメインは、実際のドメインではなく、一例です。

はJavaScript

var issue; 
     function selectMagazine2011(id){ 
      issue = document.getElementById(id).value; 
      if (issue!=0){ 
       mywindow = window.open("http://www.domain.com.au/2011/magazine_"+issue+"/index.html","new","resizable=1,scrollbars=1"); 
       mywindow.focus(); 
      } 
     } 

HTML

<div class="year"> 
     <label>2011: 
     <select name="magazine2011" id="magazine2011" onchange="selectMagazine2011('magazine2011')"> 
      <option value="0" selected="selected">Select an Issue</option> 
      <option value="Issue_4_2011">Issue 4 2011</option> 
      <option value="Issue_3_2011">Issue 3 2011</option> 
      <option value="Issue_2_2011">Issue 2 2011</option> 
      <option value="Issue_1_2011">Issue 1 2011</option> 
     </select> 
     </label> 
    </div> 
+0

function selectMagazine2011(id)の前にこれを追加しますか?http://jsfiddle.net – mowwwalker

答えて

0

あなたのコードは、私のSafariで正常に動作します。 DOMReadyまたはwindow.onloadハンドラにスクリプトがあると思われますか?この場合、関数をグローバルに使用できるようにするには、関数を

... 
window.selectMagazine2011 = function(id) { 
    ... 

と定義する必要があります。

+0

を設定してください。 – Phantom

+0

この行は、関数定義行 'function selectMagazine2011(id){'に置き換えてください。 –

関連する問題