我在页面加载时运行点击触发器来显示prettyPhoto的iframe。但是,除非我使用IE 9的开发人员工具,否则触发器不会运行。 它在谷歌运行良好。
基本上它会在#字符串后面搜索目标文本。如果文本在那里,那么它将触发处理程序。有任何想法吗?我的网址#是 - http://www.nvcc.edu/home/ssuh/wall3/#nessie-vanta
<script>
var $ = jQuery.noConflict();
jQuery(window).load(function(){
$('#wall1').wallmasonry({});
$("a[rel^='test']").prettyPhoto({deeplinking:false,
iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no" scrolling="no"></iframe>'}
);
var target = window.location.href.split('#')[1];
if (target == 'nessie-vanta') {
console.log("tester hit");
$('a#nessie-vanta').trigger('click');
alert("nessie");
};
})
</script>
答案 0 :(得分:2)
这是因为IE不支持console.log
。在IE中它会在该行抛出错误并打破进一步的javascript执行。
尝试这样的事情
if (target == 'nessie-vanta') {
if(window['console'] !== undefined){
console.log("tester hit");
}
$('a#nessie-vanta').trigger('click');
alert("nessie");
}
答案 1 :(得分:1)
首先,您可以使用location.hash
https://developer.mozilla.org/en/DOM/window.location
如果您没有开发人员工具,则console.log
会破坏IE。摆脱console.log
并且应该假设target == 'nessie-vanta'
为真