<div id="wrapper">
<button id="ppp">button</button>
<div id="content" style="display:none;"></div>
</div>
если я нажимаю кнопку, содержание будет шоу (открытый),О javascript showbox, мне нужна помощь! онлайн ~~
если содержание на шоу (открытый), когда я нажимаю документ (за исключением содержания), содержание будет быть близко.
var $ = function (id) { return! Id? null: document.getElementById (id); }
var addEventSimple = function(obj, evt, fn) { if (obj.addEventListener){ // W3C obj.addEventListener(evt, fn, false); }else if (obj.attachEvent) // Microsoft obj.attachEvent('on' + evt, fn); } var button = $('ppp'), content = $('content'); var init = function() {}; init.handleObj = button; init.showbox = content; init.flag = false; init.allowcls = false; init.open = function() {//open the content if (this.flag == false) { this.showbox.style.display = "block"; this.flag = true; this.allowcls = true; } }; init.close = function() { // close the content if (this.flag && this.allowcls) { this.showbox.style.display = "none"; this.flag = false; this.allowcls = false; } }; init.load = function() { // button click //e = e ||window.event; //e.preventDefault(); if (this.flag) { this.close(); } else { this.open(); } }; init.clickClose = function(e) { // document click if (!this.allowcls) { return; } e = e ||window.event; var target = e.target; if (target === this.showbox) { // button return; } this.close(); }; addEventSimple(button, 'click', function(){ init.load();//the code run here OK })// error on here,but i don't know why? addEventSimple(document, 'click', function (e){ init.clickClose(e); })
код здесь: http://jsfiddle.net/DCty3/
Вы знакомы с jQuery? Если да, то в чем причина, вы его не используете? Это позволяет использовать гораздо меньше кода, чтобы делать гораздо больше. В любом случае ваш «вопрос» на самом деле не является вопросом. – Deele
Я понимаю jQuery, но javascript более важен, jquery не может сделать все. – Terry
jQuery IS JavaScript-библиотека. Вы задали «проблему», это тривиальная проблема jQuery. – Deele