0

我的问题是在加载新页面时执行一个函数。我有两个页面(index.html 和 location_page.html)。在第一个中有一个标签列表。当用户单击此列表的一个元素时,他将被重定向到应动态加载相关信息的第二页。我尝试使用功能ready,但它不起作用。这是我的 jQuery 代码

$("#location_title").ready(function(e){
    console.log("executing the function");
});

这是HTML

<div class="location_info">
    <div class="location_text">
    <div id="location_title"></div>
        <div id="location_description"></div>
    </div>
    <div class="location_img"><img src="./img/strutture01.jpg" class="location_image"/></div>           
     </div>  

第一页也有这样的方法(我称之为“就绪”函数)并且它可以工作,但它在第二页上不起作用。

4

3 回答 3

0

传递一个查询字符串说location_page.html?info=1

使用此函数获取查询字符串值,

function getParameterByName(name)
{
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(window.location.search);
  if(results == null)
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}

所以在文件准备好时,调用函数

$(document).ready(function(){  
    value = getParameterByName("info");
    if (value == '1')
    {
        $("#location_title").show();
        // Do your stuff
    }
    console.log("executing the function");  
});

getParameterByName()函数取自在 JavaScript 中获取查询字符串值

更新:

替换这个

$("#location_title").ready(function(e){   

$(document).ready(function(){
于 2012-07-01T09:55:06.760 回答
0

尝试onLoad在 HTML 标记中使用 HTML 属性,<body>然后在 Javascript 中调用您的函数。

即我的Javascript;

function doSomeThing(){ /*your code*/ }

在 HTML 中;

<body onload='doSomething()'>
   <!-- your html body -->
</body>

希望能帮助到你 :-)

于 2012-07-01T09:56:12.203 回答
0

为此,您需要一个简单的自动执行匿名:

(function() {
    $("#location_title").ready(function(e){
        console.log("executing the function");
    });
})();
于 2012-07-01T09:56:14.363 回答