📄 nicejforms.js
字号:
if($(jQuery.NiceJForms.checkboxLabels[who]).is(".chosen")) { tester = false; $(jQuery.NiceJForms.checkboxLabels[who]).removeClass(); } else if(jQuery.NiceJForms.checkboxLabels[who].className == "") { tester = true; $(jQuery.NiceJForms.checkboxLabels[who]).addClass("chosen"); } jQuery.NiceJForms.checkboxes[who].checked = tester; jQuery.NiceJForms.checkCheckboxes(who, tester); }, checkCheckboxes: function(who, action) { var what = $('#myCheckbox' + who); if(action == true) {$(what).removeClass().addClass("checkboxAreaChecked");} if(action == false) {$(what).removeClass().addClass("checkboxArea");} }, focusCheckboxes: function(who) { var what = $('#myCheckbox' + who); $(what).css( { border : "1px dotted #333", margin : "0" }); return false; }, changeCheckboxes: function(e) { who = e.data.who; //console.log('changeCheckboxes who is ' + who); if($(jQuery.NiceJForms.checkboxLabels[who]).is(".chosen")) { jQuery.NiceJForms.checkboxes[who].checked = true; $(jQuery.NiceJForms.checkboxLabels[who]).removeClass(); jQuery.NiceJForms.checkCheckboxes(who, false); } else if(jQuery.NiceJForms.checkboxLabels[who].className == "") { jQuery.NiceJForms.checkboxes[who].checked = false; $(jQuery.NiceJForms.checkboxLabels[who]).toggleClass("chosen"); jQuery.NiceJForms.checkCheckboxes(who, true); } }, blurCheckboxes: function(who) { var what = $('#myCheckbox' + who); $(what).css( { border : 'none', margin : '1px' }); return false; }, replaceSelects: function() { var self = this; jQuery.NiceJForms.selects.each(function(q){ //create and build div structure var selectArea = document.createElement('div'); var left = document.createElement('div'); var right = document.createElement('div'); var center = document.createElement('div'); var button = document.createElement('a'); var text = document.createTextNode(jQuery.NiceJForms.selectText); var selectWidth = parseInt(this.className.replace(/width_/g, "")); jQuery(center) .attr({id:'mySelectText'+q}) .css({width: selectWidth - 10 + 'px'}); jQuery(selectArea) .attr({id:'sarea'+q}) .css({ width: selectWidth + jQuery.NiceJForms.options.selectRightSideWidth + jQuery.NiceJForms.options.selectLeftSideWidth + 'px' }) .addClass("selectArea"); jQuery(button) .css({ width : selectWidth + jQuery.NiceJForms.options.selectRightSideWidth + jQuery.NiceJForms.options.selectLeftSideWidth + 'px', marginLeft : - selectWidth - jQuery.NiceJForms.options.selectLeftSideWidth + 'px', cursor: 'pointer' }) .addClass("selectButton") .bind('click', {who:q}, function(e){self.showOptions(e)}) .keydown(jQuery.NiceJForms.keyPressed); jQuery(left).addClass("left"); jQuery(right).addClass("right").append(button); jQuery(center).addClass("center").append(text); jQuery(selectArea).append(left).append(right).append(center).insertBefore(this); //hide the select field $(this).hide(); //insert select div //build & place options div var optionsDiv = document.createElement('div'); selectAreaPos = jQuery.iUtil.getPosition(selectArea); jQuery(optionsDiv) .attr({id:"optionsDiv" + q}) .css({ width : selectWidth + 1 + 'px', left : selectAreaPos.x + 'px', top : selectAreaPos.y + jQuery.NiceJForms.options.selectAreaHeight - jQuery.NiceJForms.options.selectAreaOptionsOverlap + 'px' }) .addClass("optionsDivInvisible"); //get select's options and add to options div $(jQuery.NiceJForms.selects[q]).children().each(function(w){ var optionHolder = document.createElement('p'); var optionLink = document.createElement('a'); var optionTxt = document.createTextNode(jQuery.NiceJForms.selects[q].options[w].text); jQuery(optionLink) .attr({href:'#'}) .css({cursor:'pointer'}) .append(optionTxt) .bind('click', {who: q, id:jQuery.NiceJForms.selects[q].id, option:w, select:q}, function(e){self.showOptions(e);self.selectMe(jQuery.NiceJForms.selects[q].id, w, q)}); jQuery(optionHolder).append(optionLink); jQuery(optionsDiv).append(optionHolder); //check for pre-selected items if(jQuery.NiceJForms.selects[q].options[w].selected) {self.selectMe($(jQuery.NiceJForms.selects[q]).attr("id"), w, q);} }); jQuery('body').append(optionsDiv); }); }, selectMe: function(selectFieldId, linkNo, selectNo) { selectField = $('#' + selectFieldId); sFoptions = selectField.children(); selectField.children().each(function(k){ if(k == linkNo) {sFoptions[k].selected="selected";} else {sFoptions[k].selected = "";} }); textVar = $("#mySelectText" + selectNo); var newText = document.createTextNode($(sFoptions[linkNo]).text()); textVar.empty().append(newText); }, showOptions: function(e) { var self = this; $("#optionsDiv"+e.data.who).toggleClass("optionsDivVisible").toggleClass("optionsDivInvisible").mouseout(function(e){self.hideOptions(e)}); }, hideOptions: function(e) { if (!e) var e = window.event; var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement; if(((reltg.nodeName != 'A') && (reltg.nodeName != 'DIV')) || ((reltg.nodeName == 'A') && (reltg.className=="selectButton") && (reltg.nodeName != 'DIV'))) {this.className = "optionsDivInvisible";}; e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation(); }, replaceTexts: function() { jQuery.NiceJForms.texts.each(function(q){ $(jQuery.NiceJForms.texts[q]).css({width:this.size * 10 + 'px'}); var txtLeft = new Image(); jQuery(txtLeft) .attr({src:jQuery.NiceJForms.options.imagesPath + "input_left.gif"}) .addClass("inputCorner"); var txtRight = new Image(); jQuery(txtRight) .attr({src:jQuery.NiceJForms.options.imagesPath + "input_right.gif"}) .addClass("inputCorner"); $(jQuery.NiceJForms.texts[q]).before(txtLeft).after(txtRight).addClass("textinput"); //create hovers $(jQuery.NiceJForms.texts[q]).focus(function(){$(this).addClass("textinputHovered");$(this).prev().attr('src', jQuery.NiceJForms.options.imagesPath + "input_left_xon.gif");$(this).next().attr('src', jQuery.NiceJForms.options.imagesPath + "input_right_xon.gif");}); $(jQuery.NiceJForms.texts[q]).blur(function() {$(this).removeClass().addClass("textinput");$(this).prev().attr('src', jQuery.NiceJForms.options.imagesPath + "input_left.gif");$(this).next().attr('src', jQuery.NiceJForms.options.imagesPath + "input_right.gif");}); }); }, replaceTextareas: function() { jQuery.NiceJForms.textareas.each(function(q){ var where = $(this).parent(); var where2 = $(this).prev(); $(this).css({width: $(this).attr("cols") * 10 + 'px', height: $(this).attr("rows") * 10 + 'px'}); //create divs var container = document.createElement('div'); jQuery(container) .css({width: jQuery.NiceJForms.textareas[q].cols * 10 + 20 + 'px', height: jQuery.NiceJForms.textareas[q].rows * 10 + 20 + 'px'}) .addClass("txtarea"); var topRight = document.createElement('div'); jQuery(topRight).addClass("tr"); var topLeft = new Image(); jQuery(topLeft).attr({src: jQuery.NiceJForms.options.imagesPath + 'txtarea_tl.gif'}).addClass("txt_corner"); var centerRight = document.createElement('div'); jQuery(centerRight).addClass("cntr"); var centerLeft = document.createElement('div'); jQuery(centerLeft).addClass("cntr_l"); if(!$.browser.msie) {jQuery(centerLeft).height(jQuery.NiceJForms.textareas[q].rows * 10 + 10 + 'px')} else {jQuery(centerLeft).height(jQuery.NiceJForms.textareas[q].rows * 10 + 12 + 'px')}; var bottomRight = document.createElement('div'); jQuery(bottomRight).addClass("br"); var bottomLeft = new Image(); jQuery(bottomLeft).attr({src: jQuery.NiceJForms.options.imagesPath + 'txtarea_bl.gif'}).addClass('txt_corner'); //assemble divs jQuery(topRight).append(topLeft); jQuery(centerRight).append(centerLeft).append(jQuery.NiceJForms.textareas[q]); jQuery(bottomRight).append(bottomLeft); jQuery(container).append(topRight).append(centerRight).append(bottomRight); jQuery(where2).before(container); //create hovers $(jQuery.NiceJForms.textareas[q]).focus(function(){$(this).prev().removeClass().addClass("cntr_l_xon"); $(this).parent().removeClass().addClass("cntr_xon"); $(this).parent().prev().removeClass().addClass("tr_xon"); $(this).parent().prev().children(".txt_corner").attr('src', jQuery.NiceJForms.options.imagesPath + "txtarea_tl_xon.gif"); $(this).parent().next().removeClass().addClass("br_xon"); $(this).parent().next().children(".txt_corner").attr('src', jQuery.NiceJForms.options.imagesPath + "txtarea_bl_xon.gif")}); $(jQuery.NiceJForms.textareas[q]).blur(function(){$(this).prev().removeClass().addClass("cntr_l"); $(this).parent().removeClass().addClass("cntr"); $(this).parent().prev().removeClass().addClass("tr"); $(this).parent().prev().children(".txt_corner").attr('src', jQuery.NiceJForms.options.imagesPath + "txtarea_tl.gif"); $(this).parent().next().removeClass().addClass("br"); $(this).parent().next().children(".txt_corner").attr('src', jQuery.NiceJForms.options.imagesPath + "txtarea_bl.gif")}); }); }, buttonHovers: function() { jQuery.NiceJForms.buttons.each(function(i){ $(this).addClass("buttonSubmit"); var buttonLeft = document.createElement('img'); jQuery(buttonLeft).attr({src: jQuery.NiceJForms.options.imagesPath + "button_left.gif"}).addClass("buttonImg"); $(this).before(buttonLeft); var buttonRight = document.createElement('img'); jQuery(buttonRight).attr({src: jQuery.NiceJForms.options.imagesPath + "button_right.gif"}).addClass("buttonImg"); if($(this).next()) {$(this).after(buttonRight)} else {$(this).parent().append(buttonRight)}; $(this).hover( function(){$(this).attr("class", $(this).attr("class") + "Hovered"); $(this).prev().attr("src", jQuery.NiceJForms.options.imagesPath + "button_left_xon.gif"); $(this).next().attr("src", jQuery.NiceJForms.options.imagesPath + "button_right_xon.gif")}, function(){$(this).attr("class", $(this).attr("class").replace(/Hovered/g, "")); $(this).prev().attr("src", jQuery.NiceJForms.options.imagesPath + "button_left.gif"); $(this).next().attr("src", jQuery.NiceJForms.options.imagesPath + "button_right.gif")} ); }); }}jQuery.preloadImages = function(){ var imgs = new Array(); for(var i = 0; i<arguments.length; i++) { imgs[i] = jQuery("<img>").attr("src", arguments[i]); } return imgs;}jQuery.iUtil = { getPosition : function(e) { var x = 0; var y = 0; var restoreStyle = false; var es = e.style; if (jQuery(e).css('display') == 'none') { oldVisibility = es.visibility; oldPosition = es.position; es.visibility = 'hidden'; es.display = 'block'; es.position = 'absolute'; restoreStyle = true; } var el = e; while (el){ x += el.offsetLeft + (el.currentStyle && !jQuery.browser.opera ?parseInt(el.currentStyle.borderLeftWidth)||0:0); y += el.offsetTop + (el.currentStyle && !jQuery.browser.opera ?parseInt(el.currentStyle.borderTopWidth)||0:0); el = el.offsetParent; } el = e; while (el && el.tagName && el.tagName.toLowerCase() != 'body') { x -= el.scrollLeft||0; y -= el.scrollTop||0; el = el.parentNode; } if (restoreStyle) { es.display = 'none'; es.position = oldPosition; es.visibility = oldVisibility; } return {x:x, y:y}; }, getPositionLite : function(el) { var x = 0, y = 0; while(el) { x += el.offsetLeft || 0; y += el.offsetTop || 0; el = el.offsetParent; } return {x:x, y:y}; }};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -