//关闭历史记录
var mPublic = {
bindTouch: function(context, s) {
M("a", context).bind("click", function() {
M("#J_search_pop").hide();
//关闭历史记录
s && cc(s);
});
},
reset: function(height) {
M("#m_index")[0].style.cssText = "height:" + height + "px;overflow:hidden;";
}
};
//搜索
var Search = {
defaultValue: "",
cc:function(){},
checkSession:function(){
var testKey = 'test', storage = window.localStorage;
try {
storage.setItem(testKey, '1');
storage.removeItem(testKey);
return true;
} catch (error) {
return false;
}
},
think: function(keyword) {
keyword = encodeURIComponent(keyword);
// 百度搜索
var url = "http://m.baidu.com/su?p=3&ie=utf-8&from=wise_web&cb=searchThink&wd=" + keyword + "&t=" + Math.round(new Date().getTime() / 1e3);
M.getScript(url);
},
thinkCallback: function(data) {
if (data.s.length > 0 && M.trim(M(".J_search_input").val()) !== "") {
var search_data = [];
if(Search.checkSession()){
if (localStorage && localStorage.getItem("history")) {
var history = localStorage.getItem("history");
console.log(history);
var hisArray = history.split(",");
for (var j = 0; j < hisArray.length; j++) {
if (hisArray[j].indexOf(data["q"]) != -1) {
hisArray[j] = hisArray[j].replace(/@@@/g, ",");
var href=Search.furl(hisArray[j]);
search_data.push('
' + data["q"] + "" + hisArray[j].replace(data["q"], "") + "");
break;
}
}
}
}
for (var i = 0; i < data["s"].length; i++) {
if (i < 5) {
var href=Search.furl(data["s"][i]);
search_data.push('' + data["q"] + "" + data["s"][i].replace(data["q"], "") + "");
}
}
if (M.trim(M(".J_search_input").val()) === "") {
M(".J_search_pop").hide();
return;
}
M(".serch-think-ul").html(search_data.join(""));
M(".J_search_pop").removeClass("m-serch-think-history").addClass("m-serch-think");
M(".J_clearHistory").hide();
M(".J_closeSearch").show();
M(".serch-think-ul").show();
M(".J_search_pop").show();
} else {
M(".J_search_pop").hide();
}
},
changeKeyword: function(keyword) {
M(".J_search_input").val(keyword);
M(".J_search_clear").show();
M('.J_search_input')[0].focus();
Search.think(keyword);
},
setSearchHistory: function(keyword) {
var in_array = function(k, arr) {
for (var i = 0; i < arr.length; i++) {
if (arr[i] == k) return true;
}
return false;
};
var keyword = M.trim(keyword);
keyword = keyword.replace(/^\,+|\,+$/g, "");
if (keyword) {
keyword = keyword.replace(/\,+/g, "@@@");
if(Search.checkSession()){
if (window.localStorage) {
if (localStorage.getItem("history")) {
var history = localStorage.getItem("history");
var hisArray = history.split(",");
if (!in_array(keyword, hisArray)) {
if (hisArray.length >= 5) {
hisArray.splice(4, 1);
}
history = hisArray.join(",");
localStorage.setItem("history", keyword + "," + history);
}
} else {
localStorage.setItem("history", keyword);
}
}
}
}
},
doSearch: function() {
var in_searchs = "search_" + M(".J_search_input").val();
M(".J_search_pop").hide();
if (M(".J_search_input").val()=="") {
} else {
M(".J_search_pop").hide();
var href=Search.furl(M(".J_search_input").val());
if (navigator.userAgent.toLocaleLowerCase().indexOf("mb2345browser") != -1) {
window.location.href = href;
} else {
window.open(href);
}
try {
Search.setSearchHistory(M(".J_search_input").val());
} catch (e) {
return false;
}
}
return false;
},
addClickCount: function(cname, keyword) {
var in_searchs = "search_" + keyword;
if (cname == 'lianxiang_search'){
try {
Search.setSearchHistory(keyword);
} catch (e) {
return false;
}
}
},
bindEvents: function() {
var me = this;
M(".J_search_input").bind("input", function(e) {
var keyword = $(this).val();
if (M.trim(keyword) == "") {
M(".J_search_btn").html("取 消");
$("#input1").val(keyword);
M(".serch-think-ul").html("");
M(".J_search_pop").hide();
M(".J_search_clear").hide();
return;
}
M(".J_search_btn").html("搜 索");
//$("#input1").val(keyword);
M(".J_search_clear").show();
me.think(keyword);
}).bind("keyup", function(e) {
e = e || window.event;
if (e.keyCode == 13) {
me.doSearch();
return;
}
}).bind("focus", function(){
var keyword = $(this).val();
if (M.trim(keyword) == "") {
M(".J_search_btn").html("取 消");
$("#input1").val(keyword);
M(".serch-think-ul").html("");
M(".J_search_pop").hide();
M(".J_search_clear").hide();
return;
}
M(".J_search_btn").html("搜 索");
//$("#input1").val(keyword);
M(".J_search_clear").show();
me.think(keyword);
});
M(".J_search_btn").bind('tap', function() {
M(".J_search_pop").hide();
var inputValue = M(".J_search_input").val().trim();
var in_search = "search_" + inputValue;
if(in_search == 'search_')
{
if(M(".J_search_btn").html() == '搜 索'){
}
if(M(".J_search_btn").html() == '取 消'){
M(".J_search_btn").html("搜 索");
}
}
else
{
}
//var inputValue = M(".J_search_input", this.parentNode).val().trim();
if(inputValue != ''){
me.setSearchHistory(M(".J_search_input").val());
}
//根据产品需求,搜索词为空时效果改成和下拉历史搜索一样
// if (inputValue == "") {
// var keyword = M(".J_search_input").val().trim();
//
// if (keyword == "" && M(".J_search_pop").css("display") == "none") {
// var search_data = [];
// if(checkSession()){
// var history = localStorage.getItem("history");
// if (history) {
// var data = history.split(",");
// if (data.length > 0) {
// for (var i = 0; i < data.length; i++) {
// if (search_data.length < 6 && data[i] && M.trim(data[i])) {
// data[i] = data[i].replace(/@@@/g, ",");
// var href=Search.furl(data[i]);
// search_data.push('' + data[i] + "");
// }
// }
// }
// }
// if (history) {
// M(".J_search_pop").addClass("m-serch-think-history");
// M(".serch-think-ul").html(search_data.join(""));
// M(".J_clearHistory").show();
// M(".J_search_pop").show();
// }
// }
// }
//
// } else {
// M(".J_search_pop").hide();
// var href=Search.furl(inputValue);
// if (navigator.userAgent.toLocaleLowerCase().indexOf("mb2345browser") != -1) {
// window.location.href = href;
// } else {
// window.open(href);
// }
// me.setSearchHistory(M(".J_search_input").val());
// }
});
M(".J_search_input").bind("click", function() {
var keyword = M(".J_search_input").val();
if(keyword == ""){
M(".J_search_btn").html("取 消");
}
else
{
M(".J_search_btn").html("搜 索");
}
if (keyword == "" && M(".J_search_pop").css("display") == "none") {
var search_data = [];
if(Search.checkSession()){
var history = localStorage.getItem("history");
if (history) {
var data = history.split(",");
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
if (search_data.length < 6 && data[i] && M.trim(data[i])) {
data[i] = data[i].replace(/@@@/g, ",");
var href=Search.furl(data[i]);
search_data.push('' + data[i] + "");
}
}
}
}
if (history) {
M(".J_search_pop").addClass("m-serch-think-history");
M(".serch-think-ul").html(search_data.join(""));
M(".J_clearHistory").show();
M(".J_search_pop").show();
}
}
}
});
M(".J_search_clear").click(function() {
M(".J_search_input").val("");
$(".J_search_input").focus();
M(".J_search_btn").html("取 消");
M(".J_search_pop").hide();
M(".J_search_clear").hide();
});
M(".J_closeSearch").click(function() {
M(".J_search_pop").hide();
});
M(".J_clearHistory").click(function() {
if (confirm("清除全部查询历史记录?")) {
if(Search.checkSession()){
if (window.localStorage) {
localStorage.removeItem("history");
M(".J_search_pop").hide();
M(".serch-think-ul").html("");
}
}
}
});
// 2015.11.15 改变输入框默认显示逻辑
M("#input1").bind("focus", function() {
if (M.trim(M(".J_search_input").val()) === "") M("#input1")[0].setAttribute("placeholder", "");
});
M("#input1").bind("blur", function() {
if (M.trim(M(".J_search_input").val()) === "") M("#input1")[0].setAttribute("placeholder", "搜索关键词");
M(".J_search_btn").html("搜 索");
//M(".J_search_pop").hide();
});
},
furl:function(key){
var u=qT26.first.action+"?";
if(qT26.first.ie=="utf-8"){
u+=qT26.first.name+"="+encodeURIComponent(key);
}else if(qT26.first.ie=="gb2312"){
u+=qT26.first.name+"="+escape(key);
}
var uu=qT26.first.params;
for (I in qT26.first.params) {
u+="&"+I+"="+qT26.first.params[I];
}
return u;
},
init: function() {
window.searchThink = Search.thinkCallback;
window.changeKeyword = Search.changeKeyword;
window.submitSearch = Search.doSearch;
this.bindEvents();
}
};
Search.init();
var currentPosition, timer, scrollHgt = M.getPos(M(".m-serch")[0]).y;