0

私のページでは、条件付きのブロックに JavaScript 関数を使用しました。ブラウザーが IE8 の場合、スタイルはこのようになるか、他のスタイルを使用します。しかし、以下の条件を使用した場合、関数は機能しません。誰でもこの問題を解決するのを手伝ってください

function addnew(type)
{
type=parseInt(type)+1;
 var isOpera, isIE = false;
  if(typeof(window.opera) != 'undefined'){isOpera = true;}
  if(!isOpera && navigator.userAgent.indexOf('Internet Explorer')){isIE = true);
 var mydiv = document.createElement("div");
    mydiv.setAttribute("id",name5);
 if(!IE){
    mydiv.setAttribute("style","width:110px;height:80px;background-image:url(images/transparent.png);float:left;text-align:center;border:1px solid #ccc;");
    }
    else
        {
                mydiv.style.setAttribute('cssText', "width:110px;height:80px;background-image:url(images/transparent.png);float:left;text-align:center;border:1px solid #ccc;");
        }
}

                <input id="addchoice" type=button value="Add New Entry" onclick="addnew(document.forms['addpoll']['choicecount'].value);">
4

2 に答える 2

2

Internet Explorer の特定のバージョンを対象とするよりクリーンな方法として、Conditional Comments があります。

例:

<!--[if IE 8]>
<style type="text/css">

 .my-div-class-here { 
     width:110px;
     height:80px;
    ... }

</style>
<![endif]-->
于 2013-01-23T10:52:28.137 に答える
0
function addnew(type)
{
var isOpera, isIE = false;
       if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
  var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
   if (ieversion==8)
    isIE = true;
   }
if(isIE)
{
//code for IE
}

else
{
//code for other browsers
}
于 2013-01-23T11:26:47.063 に答える