0

我现在很沮丧……而且犯了很多错误。对于那个很抱歉

我一直在尝试根据搜索结果取消隐藏特定的 div

如果没有进行搜索,则不应出现 div,这很容易使用 css,但是一旦搜索完成,我必须将样式更改为“块”。

由于我使用的是谷歌自定义搜索 javascript,因此很难将按钮替换为触发我的 javascript 函数的另一个类似按钮。

我也不知道如何将“resultDiv”替换为更复杂的路径

我已经完成了这个 javascript 函数来隐藏基于结果 div 的 div ...

css div 样式位于#main.section .widget.HTML

function check()
{
    if (document.getElementById('resultDiv')) {
      if ($('.gsc-expansionArea').is(":empty")) {
         document.getElementById('resultDiv').style.display = 'none';
      }
      else {
         document.getElementById('resultDiv').style.display = 'block';
      }
   }    
}

我认为可能有两种可能的解决方案。首先是加载脚本

<body onLoad="check();"> 

但似乎不起作用。

其次是检查 ?q= 的 URL,这意味着搜索已完成,但我不知道如何从 URL 获取这些参数。

请帮助我。谢谢

4

3 回答 3

2

好吧,既然你已经标记了

$(window).load(function(){
   check();
})

你的功能 check() 可能更像

function check() {
    if ($('#resultDiv').length) {
        if ($('.gsc-expansionArea').is(":empty")) {
            $('#resultDiv').css({'display': 'none'})
        }
        else {
            $('#resultDiv').css({'display': 'block'})
        }
    }
}

--

其次是检查 ?q= 的 URL,这意味着搜索已完成,但我不知道如何从 URL 获取这些参数。

采用location.search

于 2012-10-09T18:32:22.407 回答
1

代替

<body onLoad="javascript:check();"> 

<body onLoad="check();"> 
于 2012-10-09T18:27:07.210 回答
-1

您可以使用

$(document).ready(function()
{ 
  check();  
} 

在页面加载时加载函数。您还可以使用 jQuery 简化您的功能:

function check()
{
  var isEmpty= $('.gsc-expansionArea').is(":empty");
  $('#resultDiv').toggle(isEmpty);
}

的文档toggle这里

于 2012-10-09T18:47:19.603 回答