私は立ち往生しており、JavaScript は初めてです。
HTML では、配列から連続したメッセージを表示するループを取得できます。メッセージが突然表示されるのではなく、フェードインするようにしています。以下のコードで両方の効果を別々に行うことができますが、それらを組み合わせて機能させることはできないようです。コメント/ヘルプに感謝します。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
#messaging{
font-size: 35pt;
}
</style>
<script type ="text/javascript" >
var phrases = ["message1",
"message2",
"message3",
"message4"];
var msgCycleRate = 3000;
var text;
function get( id0 ) {
return document.getElementById( id0 );
}
function cycleMsgs( id1 ) {
if ('undefined' === typeof id1){
id1 = -1;
}
id1 = (id1 + 1)% phrases.length;
start(text = get( 'messaging' ).innerHTML = phrases[id1]); //line 37 here
setTimeout( 'cycleMsgs(' + id1 + ');', msgCycleRate);
}
function doMsgs() {
setTimeout( 'cycleMsgs();', 0);
}
var opacity = 0.0;
var alpha= 0;
function start(textM) {
textM.style.filter="alpha(opacity = " + alpha +")";
textM.style.opacity=opacity;
setTimeout("fadeIn(textM)",50);
}
function fadeIn(textM) {
opacity= opacity +0.1;
alpha=parseInt(opacity*100);
textM.style.opacity=opacity;
textM.style.filter="alpha(opacity = " + alpha +")";
if (opacity < 1.0) {
setTimeout("fadeIn(textM)",50);
}
}
if(window.addEventListener) {
window.addEventListener('load', doMsgs, false); // non-IE
}
else {
window.attachEvent('onload', doMsgs); // IE
}
</script>
</head>
<body>
<p id ="messaging">/p>
</body>
コードを実行して取得します:
SCRIPT5007: 未定義または null 参照のプロパティ 'filter' を設定できません。行 37 文字 17
ここには何が表示されていませんか? 再度、感謝します。