You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

664 lines
19 KiB

2 years ago
/*H-ui.js v2.3 date:9:53 2015-07-17 by:guojunhui*/
if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
var msViewportStyle = document.createElement("style")
msViewportStyle.appendChild(
document.createTextNode(
"@-ms-viewport{width:auto!important}"
)
)
document.getElementsByTagName("head")[0].appendChild(msViewportStyle);
}
/*
<a title="收藏本站" href="javascript:;" onClick="addFavoritepage('H-ui前端框架','http://www.h-ui.net/');">收藏本站</a>
*/
/*收藏主站*/
function addFavorite(name,site){
try{window.external.addFavorite(site,name);}
catch(e){
try{window.sidebar.addPanel(name,site,"");}
catch(e){alert("加入收藏失败请使用Ctrl+D进行添加");}
}
}
/*
<a title="收藏本页" href="javascript:addFavoritepage(0);">收藏本页</a>
*/
function addFavoritepage(){var sURL=window.location.href;var sTitle=document.title;try{window.external.addFavorite(sURL,sTitle);}catch(e){try{window.sidebar.addPanel(sTitle,sURL,"");}catch(e){alert("加入收藏失败请使用Ctrl+D进行添加");}}}
/*设为首页*/
function setHome(obj){
try{obj.style.behavior="url(#default#homepage)";obj.setHomePage(webSite);}
catch(e){if(window.netscape){
try {netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");}
catch(e){alert("此操作被浏览器拒绝!\n请在浏览器地址栏输入\"about:config\"并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为'true',双击即可。");}
var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
prefs.setCharPref('browser.startup.homepage',url);}}
}
/*滚动*/
function marquee(height,speed,delay){
var scrollT;
var pause = false;
var ScrollBox = document.getElementById("marquee");
if(document.getElementById("holder").offsetHeight <= height) return;
var _tmp = ScrollBox.innerHTML.replace('holder', 'holder2');
ScrollBox.innerHTML += _tmp;
ScrollBox.onmouseover = function(){pause = true};
ScrollBox.onmouseout = function(){pause = false};
ScrollBox.scrollTop = 0;
function start(){
scrollT = setInterval(scrolling,speed);
if(!pause) ScrollBox.scrollTop += 2;
}
function scrolling(){
if(ScrollBox.scrollTop % height != 0){
ScrollBox.scrollTop += 2;
if(ScrollBox.scrollTop >= ScrollBox.scrollHeight/2) ScrollBox.scrollTop = 0;
}
else{
clearInterval(scrollT);
setTimeout(start,delay);
}
}
setTimeout(start,delay);
}
/*隐藏显示密码*/
(function ( $ ) {
$.fn.togglePassword = function( options ) {
var s = $.extend( $.fn.togglePassword.defaults, options ),
input = $( this );
$( s.el ).on( s.ev, function() {
"password" == $( input ).attr( "type" ) ?
$( input ).attr( "type", "text" ) :
$( input ).attr( "type", "password" );
});
};
$.fn.togglePassword.defaults = {
ev: "click"
};
}( jQuery ));
!function ($) {
"use strict";
$(function () {
$.support.transition = (function () {
var transitionEnd = (function () {
var el = document.createElement('bootstrap'),
transEndEventNames = {
'WebkitTransition' : 'webkitTransitionEnd',
'MozTransition' : 'transitionend',
'OTransition' : 'oTransitionEnd otransitionend',
'transition' : 'transitionend'
},
name
for (name in transEndEventNames){
if (el.style[name] !== undefined) {
return transEndEventNames[name]
}
}
}())
return transitionEnd && {
end: transitionEnd
}
})()
});
}(window.jQuery);
/*左侧菜单-隐藏显示*/
function displaynavbar(obj){
if($(obj).hasClass("open")){
$(obj).removeClass("open");
$("body").removeClass("big-page");
}else{
$(obj).addClass("open");
$("body").addClass("big-page");
}
}
/*模拟下拉菜单*/
jQuery.Huiselect = function(divselectid,inputselectid) {
var inputselect = $(inputselectid);
$(divselectid+" cite").click(function(){
var ul = $(divselectid+" ul");
ul.slideToggle();
});
$(divselectid+" ul li a").click(function(){
var txt = $(this).text();
$(divselectid+" cite").html(txt);
var value = $(this).attr("selectid");
inputselect.val(value);
$(divselectid+" ul").hide();
});
$(document).click(function(){$(divselectid+" ul").hide();});
};
/*hover*/
jQuery.Huihover =function(obj) {
$(obj).hover(function(){$(this).addClass("hover");},function(){$(this).removeClass("hover");});
};
/*得到失去焦点*/
jQuery.Huifocusblur = function(obj) {
$(obj).focus(function() {$(this).addClass("focus").removeClass("inputError");});
$(obj).blur(function() {$(this).removeClass("focus");});
};
/*tab选项卡*/
jQuery.Huitab =function(tabBar,tabCon,class_name,tabEvent,i){
var $tab_menu=$(tabBar);
// 初始化操作
$tab_menu.removeClass(class_name);
$(tabBar).eq(i).addClass(class_name);
$(tabCon).hide();
$(tabCon).eq(i).show();
$tab_menu.on(tabEvent,function(){
$tab_menu.removeClass(class_name);
$(this).addClass(class_name);
var index=$tab_menu.index(this);
$(tabCon).hide();
$(tabCon).eq(index).show();
});
}
/*折叠*/
jQuery.Huifold = function(obj,obj_c,speed,obj_type,Event){
if(obj_type == 2){
$(obj+":first").find("b").html("-");
$(obj_c+":first").show();
}
$(obj).on(Event,function(){
if($(this).next().is(":visible")){
if(obj_type == 2){
return false;
}else{
$(this).next().slideUp(speed).end().removeClass("selected");
if($(this).find("b")){
$(this).find("b").html("+");
}
}
}
else{
if(obj_type == 3){
$(this).next().slideDown(speed).end().addClass("selected");
if($(this).find("b")){
$(this).find("b").html("-");
}
}else{
$(obj_c).slideUp(speed);
$(obj).removeClass("selected");
if($(this).find("b")){
$(obj).find("b").html("+");
}
$(this).next().slideDown(speed).end().addClass("selected");
if($(this).find("b")){
$(this).find("b").html("-");
}
}
}
});
}
/*返回顶部*/
var $backToTopEle=$('<a href="javascript:void(0)" class="Hui-iconfont toTop" title="返回顶部" alt="返回顶部" style="display:none">&#xf0023;</a>').appendTo($("body")).click(function(){
$("html, body").animate({ scrollTop: 0 }, 120);
});
var $backToTopFun = function() {
var st = $(document).scrollTop(), winh = $(window).height();
(st > 0)? $backToTopEle.show(): $backToTopEle.hide();
/*IE6下的定位*/
if(!window.XMLHttpRequest){
$backToTopEle.css("top", st + winh - 166);
}
};
/*textarea 字数限制*/
function textarealength(obj,maxlength){
var v = $(obj).val();
var l = v.length;
if( l > maxlength){
v = v.substring(0,maxlength);
}
$(obj).parent().find(".textarea-length").text(v.length);
}
/*Huimodalalert*/
function Huimodal_alert(info,speed){
$(document.body).append(
'<div id="modal-alert" class="modal hide modal-alert">'+
'<div class="modal-alert-info">'+info+'</div>'+
'</div>'
);
$("#modal-alert").fadeIn();
setTimeout("Huimodal_alert_hide()",speed);
}
function Huimodal_alert_hide() {
$("#modal-alert").fadeOut("normal",function(){
$("#modal-alert").remove();
});
}
/*设置cookie*/
function setCookie(name, value, Days){
if(Days == null || Days == ''){
Days = 300;
}
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + "; path=/;expires=" + exp.toGMTString();
}
/*获取cookie*/
function getCookie(name) {
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
$(function(){
/*****表单*****/
$.Huifocusblur(".input-text,.textarea");
/*按钮loading*/
$('.btn-loading').click(function () {
var $btn = $(this);
var btnval = $btn.val();
$btn.addClass("disabled").val("loading").attr("disabled","disabled");
setTimeout(function(){
$btn.removeClass("disabled").val(btnval).removeAttr("disabled");
}, 3000);
});
/**/
$.Huiselect("#divselect","#inputselect");
/*全选*/
$("table thead th input:checkbox").on("click" , function(){
$(this).closest("table").find("tr > td:first-child input:checkbox").prop("checked",$("table thead th input:checkbox").prop("checked"));
});
/*上传*/
$(document).on("change",".input-file",function(){
var uploadVal=$(this).val();
$(this).parent().find(".upload-url").val(uploadVal).focus().blur();
});
/*下拉菜单*/
$(document).on("mouseenter",".dropDown",function(){
$(this).addClass("hover");
});
$(document).on("mouseleave",".dropDown",function(){
$(this).removeClass("hover");
});
$(document).on("mouseenter",".dropDown_hover",function(){
$(this).addClass("open");
});
$(document).on("mouseleave",".dropDown_hover",function(){
$(this).removeClass("open");
});
$(document).on("click",".dropDown-menu li a",function(){
$(".dropDown").removeClass('open');
});
$(document).on('click', function(event){
var e_t = $(event.target).parents('.dropDown_click');
if($(".dropDown_click").hasClass('open')){
if(e_t.hasClass('open')){
e_t.removeClass('open');
return;
}
$(".dropDown_click").removeClass('open');
e_t.toggleClass('open');
}else{
e_t.toggleClass('open');
}
});
/*搜索框*/
$.Huifocusblur('.searchTxt');
$.Huihover('.ac_results li');
$(".ac_results li").click(function (event){
$(".searchTxt").addClass("focus").val($(this).find("p").text());
$(".ac_results").hide();
//$(".form-search").submit();/*提交表单*/
b_onclick();/*临时测试*/
return false;
});
$(".searchTxt").focus(function(){$(".ac_results").show();return false;});
$(".ac_results").blur(function(){$(this).hide();});
$("body").click(function(){$(".ac_results").hide();});
$(".searchTxt").click(function(){$(".ac_results").show();return false;});
function BindEnter(obj){
var searchBtn = $("#searchBtn");
if(obj.keyCode == 13){searchBtn.click();obj.returnValue = false;}
}
/*tag标签*/
var tags_a = $(".tags a");
tags_a.each(function(){
var x = 9;
var y = 0;
var rand = parseInt(Math.random() * (x - y + 1) + y);
$(this).addClass("tags"+rand);
});
/*对联广告*/
var dual = $(".dual");
var dual_close = $("a.dual_close");
var screen_w = screen.width;
if(screen_w>1024){dual.show();}
$(window).scroll(function(){
var scrollTop = $(window).scrollTop();
dual.stop().animate({top:scrollTop+260});
});
dual_close.click(function(){
$(this).parent().hide();
return false;
});
/*顶部展开定时自动关闭广告*/
$("#banner").slideDown("slow");
/*图片预览*/
$("a.preview").hover(
function(){
$(this).addClass("active");
$("#tooltip-preview").remove();
var winW=$(window).width();
var winW5=winW/2;
this.myTitle = this.title;
this.title = "";
var midimg = $(this).attr('data-preview');
if(midimg ==''){return false;}
else{
var imgT=$(this).parents(".imgItem").offset().top;
var imgL=$(this).parents(".imgItem").offset().left;
var imgW=$(this).parents(".imgItem").width();
var imgH=$(this).parents(".imgItem").height();
var ww=(imgL+imgW/2);
if(ww < winW5){
var tooltipLeft=(imgW+imgL)+"px";
}
else{
var tooltipRight=(winW-imgL)+"px";
}
var tooltip_keleyi_com = "<div id='tooltip-preview' style='top:"+ imgT +"px;right:"+ tooltipRight +";left:"+ tooltipLeft +"'><span id='tooltip-keleyi-div' class='loading' style='width:50px; height:50px'></span></div>";
$("body").append(tooltip_keleyi_com);
var midimgW = $(this).attr('data-width');
var midimgH = $(this).attr('data-height');
var imgTitle = this.myTitle ? "<br />" + this.myTitle + " 产品预览图" : "";
/*图片预加载*/
var image = new Image();/*创建一个Image对象*/
image.onload = function () {
if($('a.preview.active').attr('data-preview') == midimg){
var midingW2 = this.width;
var midingH2 = this.height;
$("#tooltip-keleyi-div").css({"width":midingW2+"px","height":midingH2+"px"});
$('#tooltip-keleyi-div').append(this);
}
};
image.src = midimg;
}
},
function(){
$(this).removeClass("active");
this.title = this.myTitle;
$("#tooltip-preview").remove();
}
);
/*Huialert*/
$.Huihover('.Huialert i');
$(".Huialert i").on("click",function(){
var Huialert = $(this).parents(".Huialert");
Huialert.fadeOut("normal",function(){
Huialert.remove();
});
});
/*tag标签*/
var time1;
$(".Hui-tags-lable").show();
$(".Hui-tags-input").val("");
$(document).on("blur",".Hui-tags-input",function(){
time1 = setTimeout(function(){
$(this).parents(".Hui-tags").find(".Hui-tags-list").slideUp();
}, 400);
});
$(document).on("focus",".Hui-tags-input",function(){
clearTimeout(time1);
});
$(document).on("click",".Hui-tags-input",function(){
$(this).find(".Hui-tags-input").focus();
$(this).find(".Hui-tags-list").slideDown();
});
function gettagval(obj){
var str ="";
var token =$(obj).parents(".Hui-tags").find(".Hui-tags-token");
//alert(token.length)
if(token.length<1){
$(obj).parents(".Hui-tags").find(".Hui-tags-val").val("");
return false;
}
for(var i = 0;i< token.length;i++){
str += token.eq(i).text() + ",";
$(obj).parents(".Hui-tags").find(".Hui-tags-val").val(str);
}
}
$(document).on("keydown",".Hui-tags-input",function(event){
$(this).next().hide();
var v = $(this).val().replace(/\s+/g, "");
var reg=/^,|,$/gi;
v=v.replace(reg,"");
v=$.trim(v);
var token =$(this).parents(".Hui-tags").find(".Hui-tags-token");
if(v!=''){
if(event.keyCode==13||event.keyCode==108||event.keyCode==32){
$('<span class="Hui-tags-token">'+v+'</span>').insertBefore($(this).parents(".Hui-tags").find(".Hui-tags-iptwrap"));
$(this).val("");
gettagval(this);
}
}else{
if(event.keyCode==8){
if(token.length>=1){
$(this).parents(".Hui-tags").find(".Hui-tags-token:last").remove();
gettagval(this);
}
else{
$(this).parents(".Hui-tags").find(".Hui-tags-lable").show();
return false;
}
}
}
});
$(document).on("click",".Hui-tags-has span",function(){
var taghasV = $(this).text();
taghasV=taghasV.replace(/(^\s*)|(\s*$)/g,"");
$('<span class="Hui-tags-token">'+taghasV+'</span>').insertBefore($(this).parents(".Hui-tags").find(".Hui-tags-iptwrap"));
gettagval(this);
$(this).parents(".Hui-tags").find(".Hui-tags-input").focus();
});
$(document).on("click",".Hui-tags-token",function(){
var token =$(this).parents(".Hui-tags").find(".Hui-tags-token");
var it = $(this).parents(".Hui-tags");
$(this).remove();
switch(token.length){
case 1 : it.find(".Hui-tags-lable").show();
break;
}
var str ="";
var token =it.find(".Hui-tags-token");
//alert(token.length)
if(token.length<1){
it.find(".Hui-tags-val").val("");
return false;
}
for(var i = 0;i< token.length;i++){
str += token.eq(i).text() + ",";
it.find(".Hui-tags-val").val(str);
}
});
});
function displayimg(){
$("#banner").slideUp(1000,function(){
$("#top").slideDown(1000);
});
}
setTimeout("displayimg()",4000);
/*placeholder兼容性处理*/
(function(window, document, $) {
var isInputSupported = 'placeholder' in document.createElement('input');
var isTextareaSupported = 'placeholder' in document.createElement('textarea');
var prototype = $.fn;
var valHooks = $.valHooks;
var propHooks = $.propHooks;
var hooks;
var placeholder;
if (isInputSupported && isTextareaSupported) {
placeholder = prototype.placeholder = function() {
return this;
};
placeholder.input = placeholder.textarea = true;
} else {
placeholder = prototype.placeholder = function() {
var $this = this;
$this
.filter((isInputSupported ? 'textarea' : ':input') + '[placeholder]')
.not('.placeholder')
.bind({
'focus.placeholder': clearPlaceholder,
'blur.placeholder': setPlaceholder
})
.data('placeholder-enabled', true)
.trigger('blur.placeholder');
return $this;
};
placeholder.input = isInputSupported;
placeholder.textarea = isTextareaSupported;
hooks = {
'get': function(element) {
var $element = $(element);
var $passwordInput = $element.data('placeholder-password');
if ($passwordInput) {
return $passwordInput[0].value;
}
return $element.data('placeholder-enabled') && $element.hasClass('placeholder') ? '' : element.value;
},
'set': function(element, value) {
var $element = $(element);
var $passwordInput = $element.data('placeholder-password');
if ($passwordInput) {
return $passwordInput[0].value = value;
}
if (!$element.data('placeholder-enabled')) {
return element.value = value;
}
if (value == '') {
element.value = value;
if (element != safeActiveElement()) {
setPlaceholder.call(element);
}
} else if ($element.hasClass('placeholder')) {
clearPlaceholder.call(element, true, value) || (element.value = value);
} else {
element.value = value;
}
return $element;
}
};
if (!isInputSupported) {
valHooks.input = hooks;
propHooks.value = hooks;
}
if (!isTextareaSupported) {
valHooks.textarea = hooks;
propHooks.value = hooks;
}
$(function() {
$(document).delegate('form', 'submit.placeholder', function() {
var $inputs = $('.placeholder', this).each(clearPlaceholder);
setTimeout(function() {
$inputs.each(setPlaceholder);
}, 10);
});
});
$(window).bind('beforeunload.placeholder', function() {
$('.placeholder').each(function() {
this.value = '';
});
});
}
function args(elem) {
var newAttrs = {};
var rinlinejQuery = /^jQuery\d+$/;
$.each(elem.attributes, function(i, attr) {
if (attr.specified && !rinlinejQuery.test(attr.name)) {
newAttrs[attr.name] = attr.value;
}
});
return newAttrs;
}
function clearPlaceholder(event, value) {
var input = this;
var $input = $(input);
if (input.value == $input.attr('placeholder') && $input.hasClass('placeholder')) {
if ($input.data('placeholder-password')) {
$input = $input.hide().next().show().attr('id', $input.removeAttr('id').data('placeholder-id'));
if (event === true) {
return $input[0].value = value;
}
$input.focus();
} else {
input.value = '';
$input.removeClass('placeholder');
input == safeActiveElement() && input.select();
}
}
}
function setPlaceholder() {
var $replacement;
var input = this;
var $input = $(input);
var id = this.id;
if (input.value == '') {
if (input.type == 'password') {
if (!$input.data('placeholder-textinput')) {
try {
$replacement = $input.clone().prop('type','text');
} catch(e) {
$replacement = $('<input>').prop($.extend(args(this), { 'type': 'text' }));
}
$replacement
.removeAttr('name')
.data({
'placeholder-password': $input,
'placeholder-id': id
})
.bind('focus.placeholder', clearPlaceholder);
$input
.data({
'placeholder-textinput': $replacement,
'placeholder-id': id
})
.before($replacement);
}
$input = $input.removeAttr('id').hide().prev().attr('id', id).show();
}
$input.addClass('placeholder');
$input[0].value = $input.attr('placeholder');
} else {
$input.removeClass('placeholder');
}
}
function safeActiveElement() {
try {
return document.activeElement;
} catch (exception) {}
}
}(this, document, jQuery));