jquery插件无法正常工作 - TypeError'未定义在Safari中不是一个函数'

时间:2011-09-29 17:36:36

标签: jquery jquery-ui jquery-plugins

我正在使用jquery treeview插件在层次结构视图中创建一个列表。这在firefox中工作得很好,但是在safari中出现'TypeError:undefined不是函数'这样的错误和'未捕获的TypeEror:对象[对象对象]在chrome错误控制台中没有方法'treeview'。

以下是代码段

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link type="text/css" href="./methodeditor4.css" rel="stylesheet" />
<link type="text/css" href="../../css/cupertino/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
<script type="text/javascript" src="../../js/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="../../js/jquery-ui-1.8.16.custom.min.js"></script>
<script type="text/javascript" src="./treeview/jquery.treeview.js"></script>    

<link rel="stylesheet" href="./treeview/jquery.treeview.css" type="text/css" media="screen" />







<title>Method editor</title>
<script>


$(function() {

        getmethodgroups();

});



function getmethodgroups(){

    $.ajax({
        url: "listmethods.php",
        cache:false,
        success: function(data){
        var methgroups = JSON.parse(data);
        for ( var i=0; i < methgroups.length; i++ ) {
            $(".list").append("<li  class=\"mgclick filetree\" id=" + methgroups[i] + "><span class=folder>" + methgroups[i] + "</span><ul></ul>" );
            $(".list").append("</li>");
            };
        $("#list").treeview({
           collapsed: true
        });
        }
    });




}
</script>
</head>

<body > 

( has all the elements )
</body>
</html>

treeview插件的脚本加载到页面中,路径正确。其他一些插件就像制表符一样。 Firefox工作正常,问题在于safari和chrome。有线索吗?

谢谢, 作者Srini。

1 个答案:

答案 0 :(得分:0)

onReady Change

$(function() {
//add this
 $("#list").treeview();
        getmethodgroups();
});

脚本更改#

 var branches = "";
for ( var i=0; i < methgroups.length; i++ ) {
   branches = branches + "<li  class=\"mgclick filetree\" id=" + methgroups[i] + "><span class=folder>" + methgroups[i] + "</span><ul></ul></li>"
                };
        $(branches).appendTo("#list");
            $("#list").treeview({
               add: branches
            });

的HTML

<body>
  <ul id="#list" class="filetree">
  </ul>
</body>