猎豆优选官网

search.js 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. var qs = parseQueryString(window.location.href);
  2. var id = 0;
  3. var sex = 0;
  4. var pageNum = 1;
  5. var maxPage = 1;
  6. var loadingFlag = false;
  7. var meiriData = [];
  8. var navListData = [];
  9. $().ready(function () {
  10. init();
  11. })
  12. function parseQueryString(url) {
  13. var urlObj = {};
  14. var reg = /([^?=&]+)=([^?=&]+)/g;
  15. url.replace(reg, ($0, $1, $2) => {
  16. urlObj[$1] = decodeURIComponent($2);
  17. })
  18. return urlObj;
  19. }
  20. function init () {
  21. $(".head_item_nav").css("display","block")
  22. if(qs.path == "nav"){
  23. navlistData()
  24. }
  25. if(qs.searchName){
  26. searchData(qs.searchName,1)
  27. }
  28. scrollNav();
  29. }
  30. //scroll
  31. function scrollNav () {
  32. $(window).scroll(function(){
  33. if($(window).scrollTop()>= $(document).height()-$(window).height() - 318){
  34. //到达底部加载数据
  35. if(loadingFlag){
  36. pageNum ++ ;
  37. searchData(qs.searchName,pageNum);
  38. }
  39. }
  40. if($(window).scrollTop()>400){
  41. $('.head_item_nav').css({
  42. "display": "block",
  43. "position":"fixed",
  44. "top":"46px"
  45. })
  46. }else{
  47. $('.head_item_nav').css({
  48. "display": "block",
  49. "position":"static"
  50. })
  51. }
  52. });
  53. }
  54. //导航栏目(商品分类)
  55. function navlistData (){
  56. $.ajax({
  57. type:"get",
  58. url: api.BASEURL + api.navList,
  59. headers:{
  60. sex:api.sex,
  61. source:api.source
  62. },
  63. dataType:"json",
  64. success: function (res) {
  65. if(res.errno == 0 && res.rst){
  66. if(res.rst.data){
  67. navListData = res.rst.data;
  68. var navListHtml = '';
  69. navListData.forEach(function (item,index) {
  70. navListHtml += `<li data-id=${item.id}><a href="../list/index.html?id=${item.id}&path=nav">${item.name}</a></li>`
  71. })
  72. $(".head_item_nav ul").html(navListHtml)
  73. }
  74. }
  75. },
  76. fail: function (err) {
  77. console.log(err)
  78. }
  79. });
  80. }
  81. //搜索列表
  82. function searchData(name,pageNum) {
  83. loadingFlag = false;
  84. if(maxPage < pageNum){
  85. $(".loading").html("没有更多了")
  86. return;
  87. }
  88. $.ajax({
  89. type:'post',
  90. url: api.BASEURL + api.search,
  91. headers:{
  92. sex:api.sex,
  93. source:api.source
  94. },
  95. data:{
  96. keyword:name,
  97. page:pageNum
  98. },
  99. success: function (res) {
  100. if(res && res.errno == 0 && res.rst){
  101. if(res.rst.data.length == 0){
  102. $(".loading").html("没有找到与“" + name + "”相关的商品");
  103. $(".loading").css({
  104. 'width': 'max-content',
  105. 'padding': "0 30px"
  106. })
  107. return;
  108. }
  109. var html = '';
  110. maxPage = res.rst.pageInfo.maxPage;
  111. if(res.rst.data.length>0){
  112. if(meiriData.length != 0){
  113. meiriData = meiriData.concat(res.rst.data);
  114. html = template_home(meiriData)
  115. }else{
  116. meiriData = res.rst.data;
  117. html = template_home(meiriData)
  118. }
  119. $(".Recommend .commodity_list ul").html(html)
  120. loadingFlag = true;
  121. $(".loading").html("努力加载中...")
  122. }else{
  123. $(".loading").html("没有更多了")
  124. }
  125. }else{
  126. alert(res.err)
  127. }
  128. },
  129. fail: function (err) {
  130. console.log(err)
  131. }
  132. })
  133. }