我显然忽视了一些事情
我已经将它扼死并放弃了
我正在使用dynamic drive stickybar脚本实现一个粘性底栏,除了设置cookie以记住状态之外,它似乎做了我想做的所有事情。如果我将条形内容保持为内联,它就像宣传的那样有效,但是当我将内容外部化时,我得到了
Uncaught TypeError: Cannot read property 'position' of undefined
看起来内容在脚本访问时没有加载。
在FireFox中我得到了
TypeError: this.setting is undefined
/SO/expstickybar/expstickybar2.js
Line 47
有人可以帮我确定问题所在吗?将来的调试会话能够找出出错的地方会很有帮助。
更新从头开始并在此处修复DEMO
我假设我需要了解一些通用的jQuery问题以供将来参考,所以我希望有人会帮助而不是将其关闭过于本地化。
答案 0 :(得分:2)
您的外部内容示例没有名为stickybar
从不起作用的页面:
<div id="ajaxstickydiv_stickybar">
来自页面的内容:
<div id="stickybar" class="expstickybar" style="visibility: visible; bottom: 0px;">
当你的jQuery查找名为stickybar
的div时,在第一个例子中它找不到它,这就是错误的原因。
var mystickybar=new expstickybar({
id: "stickybar", // <---- Problem here
...
});
});
修改强>
我不确定,但在您的外部内容中,包装器div的重复ID为stickybar
,可能会导致问题。尝试重命名。