jQuery:无法识别的表达式
$(document).ready(function(){ var page = window.location.hash; if(page != ""){ $('a[href='+ page +']').addclass('selected'); pageload(page.replace('#/page/', 'pages/?load=')); } $('#top a').click(function(event){ $('#top a').removeClass('selected'); $(this).addClass('selected'); pageload($(this).attr('href').replace('#/page/', 'pages/?load=')); event.preventDefault; }); });
因此,当我尝试这样做,并使用window.location.hash
加载页面时,我在控制台中收到错误消息:
未捕获错误:语法错误,无法识别的表达式:[href =#/ page / link]
我怎样才能做到这一点?
试试这个:
$('a[href="'+ page +'"]').addClass('selected');
(你需要转义href
的值 – 用这个,你得到a[href="#/page/link"]
。)
您的正则表达式不需要语音标记:
replace(#/page/, ...