行 var ndx = url.indexOf(parameter );
导致代码返回而不显示以下警报。显示网址正确的警报。
function setFrameSrc() {
var url = document.location;
if (null == url) {
alert('Javascript Error: Null Object - document.location');
return;
}
alert('URL = ' + url);
var parameter = '?image=';
var ndx = url.indexOf(parameter);
if (ndx < 0) {
alert('Parameter not found = ' + parameter);
return;
}
alert('Index of ' + parameter + ' = ' + ndx);
var frame = document.getElementById('pframe');
if (null == frame) {
alert('Javascript Error: Null Object - frame');
return;
}
frame.src = url.substring(ndx);
}
这段代码有什么问题?
最佳答案
document.location
尽管看起来很像,但它并不是一个字符串。您需要 document.location.href
。
更好的是,您可以使用 document.location.search
,它仅包含 ?
及其之后的部分(并且不包括 #
之后您就不再考虑)。
关于javascript - 调用字符串时出错 :indexOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15456241/