Javascript 函数未定义
我对javascript非常陌生,所以这里有个交易: 我试图在我的wordpress主题中实现一个阅读位置指示器。因此,我在所有脚本标记附近的页脚后面直接挂了一个div,因为这个位置栏应该贴在屏幕底部。然后我尝试实现某种custom.js,它通常应该根据用户向下滚动的距离来改变位置指示器的宽度。但这失败了,我也不知道为什么,甚至我知道这将是我在缺乏JS经验的基础上犯下的一些主要错误 每次控制台只是发送“引用错误:未定义xyz” 下面是代码,它也可以在jsfiddle上进行检查(虽然可能有点无用,但因为脚本运行在wordpress环境中,无法在那里进行模拟) HTML/PHP钩子标记:Javascript 函数未定义,javascript,html,wordpress,Javascript,Html,Wordpress,我对javascript非常陌生,所以这里有个交易: 我试图在我的wordpress主题中实现一个阅读位置指示器。因此,我在所有脚本标记附近的页脚后面直接挂了一个div,因为这个位置栏应该贴在屏幕底部。然后我尝试实现某种custom.js,它通常应该根据用户向下滚动的距离来改变位置指示器的宽度。但这失败了,我也不知道为什么,甚至我知道这将是我在缺乏JS经验的基础上犯下的一些主要错误 每次控制台只是发送“引用错误:未定义xyz” 下面是代码,它也可以在jsfiddle上进行检查(虽然可能有点无用,
add_action('wp_footer', 'tg_wp_footer');
function tg_wp_footer() {
if ( is_singular() ) echo '<div id="reading-position-indicator"></div>';
}
CSS标记:
#reading-position-indicator {
display: block;
height: 4px;
position: fixed;
bottom: 0;
left: 0;
background: #FF8500;
width: 0;
z-index: 9999;
max-width: 100%;
}
该条应该只出现在博客帖子上,因此我尝试使用“is_singular”。如何定义以避免引用错误?Atm控制台显示“$theu post”未定义。在此之前,当我尝试在第一行中不使用“'”时,我得到的错误是_singular未定义
亲切的问候 乔丹,你是对的。在使用所有开发工具(chrome、firebug、firefox nightly)检查对象元素之后,我发现firebug是查找事件的最佳解决方案。首先,我必须更改声明,因为我将酒吧从另一个主题迁移到了我的主题。因此,我的HTML标记与其他主题完全不同。在那之后,我努力使用了三个jQuery插件,它们是使事情正常运行所必需的,因为它们被用于javascript中。最后但并非最不重要的一点是,我必须为计算找到正确的html元素。这似乎有效,但我将进一步测试 我只是写,因为我想知道为什么控制台在我写的时候给我一个错误,这个错误是未定义的
if (is_singular ()) {
如果我写
if ('is_singular()') {
整件事都活跃起来了
谢谢!:-) 乔丹,你是对的。在使用所有开发工具(chrome、firebug、firefox nightly)检查对象元素之后,我发现firebug是查找事件的最佳解决方案。首先,我必须更改声明,因为我将酒吧从另一个主题迁移到了我的主题。因此,我的HTML标记与其他主题完全不同。在那之后,我努力使用了三个jQuery插件,它们是使事情正常运行所必需的,因为它们被用于javascript中。最后但并非最不重要的一点是,我必须为计算找到正确的html元素。这似乎有效,但我将进一步测试 我只是写,因为我想知道为什么控制台在我写的时候给我一个错误,这个错误是未定义的
if (is_singular ()) {
如果我写
if ('is_singular()') {
整件事都活跃起来了
谢谢!:-) 什么是
$the_post
您没有在代码中的任何地方声明它我的答案对于这个响应区域来说太大了一点;)什么是$the_post
您没有在代码中的任何地方声明它我的答案对于这个响应区域来说太大了一点;)if(is_singular())
正在检查函数的返回值是否为trueif('is_singular()')
与表示if(true)
相同,因为javascript将非空字符串计算为true。因此,if语句的代码块将始终运行。感谢richard,我想我将不止一次地需要它;)if(is_singular())
正在检查函数的返回值是否为trueif('is_singular()')
与表示if(true)
相同,因为javascript将非空字符串计算为true。因此,if语句的代码块将始终运行。感谢richard,我想我将不止一次地需要它;)