IE8如下的一些js 兼容事

一、tofix(n)這個能夠獲得n位小數 但若是想要兼容的話 仍是用字符串的截取來作吧chrome

function changeTwoDecimal_f(x)  
{  
var f_x = parseFloat(x);  
if (isNaN(f_x))  
{  
    //alert('function:changeTwoDecimal->parameter error');  
    return false;  
    }  
    var f_x = Math.round(x*100)/100;  
    var s_x = f_x.toString();  
    var pos_decimal = s_x.indexOf('.');  
    if (pos_decimal < 0)  
    {  
        pos_decimal = s_x.length;  
        s_x += '.';  
    }  
    while (s_x.length <= pos_decimal + 2)  
    {  
        s_x += '0';  
    }  
    return s_x;  
}
var money = 1000;//好比這是1000(分) 要轉化爲XX.XX的格式來顯示價錢
//var m = (money/100).toFixed(2);
var m = changeTwoDecimal_f(money/100); var y = Math.floor(m); var f = m.toString().split(".")[1];

二、咱們在js下講時間格式字符串格式化 在ff chrome ie8+能夠正常顯示 但在ie8-下 轉化出來的是NaN....spa

//獲取當天時間戳
function getCurDateTime()
{
    var date = new Date();
    var date_num = new Date(Date.UTC(date.getFullYear(),date.getMonth(),date.getDate()));
    return date_num.getTime()/1000;
}
var expire = '2014-07-05';
var now = getCurDateTime();
//var exp_end = new Date(expire).getTime()/1000; 這個在ie8-下轉化成NaN 沒法正常轉換時間字符串
var exp_end = parseISO8601(expire).getTime()/1000;
var day = Math.ceil((exp_end - now)/(24*3600));//獲得相差天數

三、class className code

在一個項目裏面 td默認有樣式名 td_def; 在對一些特別的td賦值樣式名setAttribute('class','test_class') 發如今ie8-下樣式沒有起做用 並且用f12看到td是沒有屬性及內聯樣式的 賦值 outHTML到Notepad++裏一看 發現其結構相似blog

<TD class=td_def class="test_class"></TD>

解決方法1ci

var table = $('#table').find('td');
table[i].setAttribute('class','test_class');//正常的
table[i].setAttribute('className','test_class');//給ie8-

解決方法2字符串

用jq。。。。。好吧。。這也是方法 哈哈get

相關文章
相關標籤/搜索