日期:2014-05-16  浏览次数:20820 次

Microsoft JScript 运行时错误: 对象不支持“setCurrentMouseTool”属性或方法
我在主页面内,定义了一个函数,需要引用框架页面的一个变量。我引用好了,但是还是报错:代码如下:
var mapObj = null;
        function drawrect() {
            mapObj = $("#optionMap_iframe", parent.document.body).contents().find("mapObj");
            mapObj.setCurrentMouseTool(DRAW_RECTANGLE);
        }
请问哪里错了???
------最佳解决方案--------------------
document.getElementById('optionMap_iframe').contentWindow.mapObj.setCurrentMouseTool(DRAW_RECTANGLE);

mapObj是iframe中的全局变量的话

试试看
------其他解决方案--------------------
请各位帮帮忙,谢谢了!
------其他解决方案--------------------
var mapObj = null;
  function drawrect() {
//这是个jquery对象
  mapObj = $("#optionMap_iframe", parent.document.body).contents().find("mapObj");
//jquery对象有setcurrentmousetool这个方法吗?这是地图对象的方法吧
  mapObj.setCurrentMouseTool(DRAW_RECTANGLE);
  }
------其他解决方案--------------------
引用:
var mapObj = null;
  function drawrect() {
//这是个jquery对象
  mapObj = $("#optionMap_iframe", parent.document.body).contents().find("mapObj");
//jquery对象有这个setcurrentmousetool方法吗?这是地图对象的方法吧
  mapOb……
您好,是地图对象的方法,在iframe页面中加载了这个方法的api,在iframe页面中可以使用mapObj.setcurrentmousetool(DRAW_RECTANGLE),但是在主页面中,引用对象成功确不能调用此方法???
------其他解决方案--------------------
引用:
document.getElementById('optionMap_iframe').contentWindow.mapObj.setCurrentMouseTool(DRAW_RECTANGLE);

mapObj是iframe中的全局变量的话

试试看
mapObj原来就是iframe的全局变量
------其他解决方案--------------------
引用:
document.getElementById('optionMap_iframe').contentWindow.mapObj.setCurrentMouseTool(DRAW_RECTANGLE);

mapObj是iframe中的全局变量的话

试试看


4楼正解,jquery查找的是DOM树种的对象,不能查找window域内的变量
------其他解决方案--------------------
引用:
document.getElementById('optionMap_iframe').contentWindow.mapObj.setCurrentMouseTool(DRAW_RECTANGLE);

mapObj是iframe中的全局变量的话

试试看
谢谢你,可以用调用了。刚才没有看清楚,不好意思!!!
------其他解决方案--------------------
引用:
引用:

document.getElementById('optionMap_iframe').contentWindow.mapObj.setCurrentMouseTool(DRAW_RECTANGLE);

mapObj是iframe中的全局变量的话

试试看


4楼正解,jquery查找的是DOM树种的对象,不能查找window域内的变量
4楼正解,谢谢您的回复。