jQuery:未捕获的TypeError:无法读取未定义的属性“nodeType”

我使用jQUery UI Position插件http://jqueryui.com/position/将我的图标放在网页上.选择器从数据库获取并使用PHP在$myselector变量中输出到JS.这是我目前的代码
var element_selector='<?PHP echo $myselector;?>';

$('#inline_docxdiv .Featured.Slider').position({
my: "center",at: "right top",of: $(element_selector)

});

//append icons,applicable to all

$(divname<?PHP echo $uniqueid;?>).append('<div id="inline_docxdiv" class="<?PHP echo $uniqueid;?>"><div id="helpericons_display"><a class="<?PHP echo $title_toolsetdisplayed;?>" id="questionmarkicon_inlinedoc" title="display Explanation"><img src="<?PHP echo $helper_iconpng;?>"></a><a target="_blank" href="<?PHP echo admin_url().'post.PHP?post='.$id_toolsetdisplayed.'&action=edit';?>" class="<?PHP echo $title_toolsetdisplayed;?>" id="sourceicon_inlinedoc" title="View source"><img src="<?PHP echo $helpersource_iconpng;?>"></a></div></div>');

但是,图标未正确附加,并在控制台中返回错误

Uncaught TypeError: Cannot read property ‘nodeType’ of undefined

奇怪的是,如果我在JS代码中硬编码选择器(不是由PHP输出),一切正常,控制台中没有返回错误.这是我对元素选择器进行硬编码的代码

var element_selector='.idoc-featured-slider';

有没有办法使用PHP输出选择器而不会遇到错误?谢谢你的帮助.

解决方法

我遇到了类似的问题.我收到以下错误

Uncaught TypeError: Cannot read property ‘nodeType’ of undefined

使用这些对话框位置配置值:

position: {my: "center",at: "left top",of: "window"}

根据jQuery UI documentation,“of”属性的值是一个对象而不是一个字符串.所以,当我将位置值更改为以下内容时:

position: {my: "center",of: window}

错误消失了.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...