JavaScript 한 줄 코드,유동 단축 메시지 쉽게 해결-V2 업그레이드 버 전
8461 단어 JavaScript떠다니다단축 메모
// [ ]->[ ]->[ Html ]
<script language="javascript" type="text/javascript" src="http://files.cnblogs.com/justinw/jMsg.js"></script>
구체 적 으로 다음 그림 과 같 습 니 다.새 jMsg 의 구체 적 인 기능 디 테 일 은 위의 그림 에서 상세 하 게 설명 되 었 으 니 서술 하지 않 겠 습 니 다.다음은 새 버 전의 소스 코드 입 니 다.마찬가지 로 많은 기능 특성 이 보완 되 어야 합 니 다.예 를 들 어 인터페이스 효 과 는 다시 미화 할 수 있 습 니 다.지금 은 가장 심 플 한 스타일 만 제공 하고 코드 든 기능 디자인 이 든 모두 비판 과 지적 을 환영 합 니 다.코드 의 조직 형식 은 이전 판 과 크게 바 뀌 었 고 이전 판 의 소스 코드 는 여기 서 얻 을 수 있 습 니 다.새 버 전의 소스 코드 는 다음 과 같 습 니 다.
// :Justin
// :http://justinw.cnblogs.com/
// : 。
// :V2.0
// :201004020037
// : , http://www.cnblogs.com/justinw/archive/2010/03/30/1700190.html 。
// :
//1.v2 V1beta , 。
//--begin--jMsg---
jMsg = function() {
var chkRecomend = false;
}
jMsg.prototype = {
//
initialize: function() {
jMsg.loadEvent(this.combat);
this.msgDIV();
},
dispose: function() {
//todoSomething...
},
//
post: function(msg) {
// HaveUp , 。
if (window.top.HaveUp) {
alert(' ! :)');
return false;
}
if (msg.trim().length == 0) {
alert(' !');
return false;
}
else if (msg.trim().length > 1000) {
alert(' , 1000 !');
return false;
}
var txt = document.getElementById('tbCommentBody');
if (txt != null) {
txt.style.backgroundColor = "#E4F5FF";
var date = new Date();
txt.value = msg;
txt.focus();
// ,HaveUp true
// ,HaveUp 。
window.top.HaveUp = true;
// , 。
// , 。( , )
var rlt = PostComment();
this.setMsgText("");
return true;
}
else {
// 。
// tbCommentBody , 。
alert(" !");
return false;
}
},
//
recommend: function() {
var diggit = jMsg.getElementsByClassName('diggit');
if ((diggit) && (diggit[0])) {
diggit[0].onclick();
}
else {
alert("Debug: ClassName !");
}
},
//
combat: function() {
var buryitMsg = function() {
// , 。
// , 。
var txt = document.getElementById('tbCommentBody');
if (txt != null) {
alert(' , , ...');
txt.style.backgroundColor = "#fe9ab3";
txt.focus();
}
}
var buryit = jMsg.getElementsByClassName('buryit');
if ((buryit) && (buryit[0])) {
jMsg.addEvent(buryit[0], "click", buryitMsg);
}
},
//
superPost: function(msg) {
if (this.post(msg)) {
// ,
if (this.chkRecomend) {
this.recommend();
}
else {
if (confirm(" ?")) {
this.recommend();
}
}
}
},
//
msgDIV: function() {
// 。
if (!(window.location.href.indexOf(".html") > -1)) return;
//
lastScrollY = 0;
var beat = function() {
var diffY;
if (document.documentElement && document.documentElement.scrollTop)
diffY = document.documentElement.scrollTop;
else if (document.body)
diffY = document.body.scrollTop
else
{ /*Netscape stuff*/ }
percent = .1 * (diffY - lastScrollY);
if (percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
document.getElementById("msgDiv").style.top = parseInt(document.getElementById("msgDiv").style.top) + percent + "px";
lastScrollY = lastScrollY + percent;
}
document.write(this.getMsgBoxHTML());
window.setInterval(beat, 120);
},
getMsgBoxHTML: function() {
var _HTML = "";
_HTML += "<div id=\"msgDiv\" style=\"width:265px;z-index:2010; right:15px; top:400px; position:absolute;\">";
_HTML += "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
_HTML += "<tbody>";
_HTML += "<tr><td colspan=\"2\"><textarea id=\"jmsg\" title=\" , !\" style=\"border-color:navy;background-color:transparent;width:265px;height:100px\"> , !</textarea></td></tr>";
_HTML += "<tr><td style=\"width:200px\"><input title=\"Alt+Enter\" name=\"postjMsg\" type=\"submit\"onclick=\"$jMsg.superPost($jMsg.getMsgText());return false;\" value=\" \" style=\"width:80px\"/>";
_HTML += " <a id =\"passBy\" onclick=\"$jMsg.setMsgText(' ...');return false;\" href=\"###\"> </a> ";
_HTML += "<input name=\"chkjMsg\" type=\"checkbox\" onclick=\"$jMsg.setChkRecomend(this.checked);\"/> </td><td style=\"font-size:small;text-align:right;vertical-align:top\">2010©<a href=\"http://justinw.cnblogs.com\" target=\"_blank\">Justin</a></td></tr>";
_HTML += "</tbody></table>";
_HTML += "</div>";
return _HTML;
},
setMsgText: function(txt) {
var area = document.getElementById("jmsg");
area.value = txt;
},
getMsgText: function() {
var area = document.getElementById("jmsg");
return area.value;
},
setChkRecomend: function(val) {
this.chkRecomend = val;
}
}
// onload
jMsg.loadEvent = function(fn) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = fn;
} else {
window.onload = function() {
oldonload();
fn();
}
}
}
//
jMsg.addEvent = function(obj, type, fn) {
if (obj.addEventListener)
obj.addEventListener(type, fn, true);
else if (obj.attachEvent) {
obj.attachEvent("on" + type, function() {
fn();
});
}
}
// ClassName DOM
jMsg.getElementsByClassName = function(n) {
var el = [],
_el = document.getElementsByTagName('*');
for (var i = 0; i < _el.length; i++) {
if (_el[i].className == n) {
el[el.length] = _el[i];
}
}
return el;
}
String.prototype.trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
//--end--jMsg---
//todo:
//todo:
//todo:
var $jMsg = new jMsg();
$jMsg.initialize();
작성 자:Justin 출처:http://justinw.cnblogs.com/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.