js:filter = "alpha(ofacity =" + value + ")"(IEと互換性のある)およびOpacity = value/100(FFおよびGGと互換性)(FFとGGと互換)でDOMノードの透明性を設定するための関数プロパティ。
まず、透明性を設定するための互換性コードを見てみましょう。
コードコピーは次のとおりです。
関数setopacity(ele、ofacity){
if(ele.style.opacity!= undefined){
/// FFとGGとIEの新しいバージョンと互換性
ele.style.opacity = ofacity / 100;
} それ以外 {
///古いバージョンと互換性があります
ELE.STYLE.FILTER = "Alpha(Opacity =" + Opacity + ")";
}
}
何人かの友人について、私はこれを書きました:
コードコピーは次のとおりです。
関数setopacity(ele、ofacity){
if(document.all){
///互換性のあるIE
ELE.STYLE.FILTER = "Alpha(Opacity =" + Opacity + ")";
}
ele {
/// FFとGGと互換性があります
ele.style.opacity = ofacity / 100;
}
}
IE10の下で実行することに問題があると言いたいのですが、クリックしてから応答しませんでした。 IE10は不透明度属性をサポートしているがフィルターではないため、この方法はお勧めできません。
Fadein関数コード:
コードコピーは次のとおりです。
function fadein(ele、ofacity、speed){
if(ele){
var v = ele.style.filter.replace( "alpha(ofacity ="、 "").replace( ")"、 "")|| ELE.Style.Opacity;
v <1 &&(v = v * 100);
var count = speed / 1000;
var avg = count <2? (不透明 / count):(不透明 / count -1);
varタイマー= null;
Timer = setInterval(function(){
if(v <ofacity){
v += avg;
setopacity(ele、v);
} それ以外 {
ClearInterval(タイマー);
}
}、500);
}
}
フェードアウト関数コード:
コードコピーは次のとおりです。
function Fadeout(ele、ofacity、speed){
if(ele){
var v = ele.style.filter.replace( "alpha(ofacity ="、 "").replace( ")"、 "")|| ele.style.Opacity || 100;
v <1 &&(v = v * 100);
var count = speed / 1000;
var avg =(100-不透明) / count;
varタイマー= null;
Timer = setInterval(function(){
if(v -avg> ofacity){
v - = avg;
setopacity(ele、v);
} それ以外 {
ClearInterval(タイマー);
}
}、500);
}
}
デモの例は次のとおりです。
コードコピーは次のとおりです。
<!doctype html>
<html xmlns = "http://www.w3.org/1999/xhtml">
<head>
<Meta http-equiv = "content-type" content = "text /html; charset = utf-8" />
<title> </title>
<script type = "text/javascript" src = "fade.js"> </script>
<script type = "text/javascript">
window.onload = function(){
document.getElementById( 'button1')。onclick = function(){
フェードアウト(document.getElementById( 'dv')、0、6000);
}
document.getElementById( 'button2')。onclick = function(){
Fadein(document.getElementById( 'dv')、80、6000);
}
}
</script>
</head>
<body>
<div id = "dv" style = "background-color:green; width:400px; height:400px;"> </div>
<入力id = "button1" type = "button" value = "button" />
<入力id = "button2" type = "button" value = "button" />
</body>
</html>
それを実装するより良い方法はありますか? 。 。