我有一个jsfiddle - http://jsfiddle.net/S9TCc/ - 有三个div。后两个具有“popup_name”属性,其值为“pu1”。第一个div有一个翻转处理程序,它有一个“rollover_target”属性,其值也是“pu1”。
这个想法是当你翻转box1时,它的rollover_target属性指定要显示的div,即popup_name属性为“pu1”的div。
第6行中的<$> ro $收集我们需要显示的div。这条线很好用,找到2个div。 第7行中的ro $应该完全相同,因为它只使用带有“pu1”而不是字符串“pu1”的变量。但它会带回0个div。有没有人看到这个问题?
由于
$('#box1').hover(function() {
var rollover_target;
var ro$;
debugger;
rollover_target = $(this).attr('rollover_target');
ro$=$("div[popup_name='pu1']"); // works
ro$=$("div[popup_name=rollover_target]");
x=1; // so debugger doesn't return before results of above line are seen
});
答案 0 :(得分:2)
当您使用带有变量
的字符串文字时,需要使用字符串连接ro$=$('div[popup_name="' + rollover_target + '"]');