2015-03-26 3 views
0

Я и мой товарищ по команде забиваются этой тайной.Объект top in VBScript

В то время как мы отслеживание некоторых кодов, мы сталкиваемся с что-то вроде этого

top.VARIABLE_NAME 
top.FunctionName(param) 

Мы попытались проследить код для верхнего объекта, но он не был объявлен в любом месте в проекте, поэтому мы думали, что это было встроенный объект VBScript для глобальных переменных, но для него нет документации.

до сих пор мы замечаем эту строку кода

ExecuteGlobal(strCode) 

это может быть причиной этого верхнего объекта? пожалуйста, помогите нам это понять.

Update

Это странно, но HTML нашего текущего проекта содержит много кадров. но я не знаю, является ли это причиной использования «верха».

Вот полный код/​​реализации для ExecuteGlobal (strCode)

 Sub Import(ByVal strFile) 
       Dim objFs 
       Dim WshShell 
       Dim objFile 
       Dim strCode 

       Set objFs = CreateObject("Scripting.FileSystemObject") 
       Set WshShell = CreateObject("WScript.Shell") 
       WshShell.CurrentDirectory = "E:\MyFiles\Documents\Dev\Tester\VBS\haha" 
       Set objFile = objFs.OpenTextFile(strFile) 
       strCode = objFile.ReadAll 
       objFile.Close 
       ExecuteGlobal(strCode) 
     End Sub 

если я печатаю strCode, она содержит это значение.

sub HtmlCreator(arrObj)  
    for i = LBound(arrObj) to UBound(arrObj) 
     if not isEmpty(arrObj(i)) then 
      arrObj(i).innerHtml = "me"  
     end if 
    next 
end sub 

Извините, что не могу написать точный код из-за конфиденциальности, но я надеюсь, что вы получите эту идею. THANKS ..

+0

Объект может быть создан динамически. Замените код, который вы нашли 'ExecuteGlobal (strCode)', с 'MsgBox strCode: ExecuteGlobal (strCode)' для целей отладки или использовать любой отладчик, например редактор MS Script (запускайте скрипт, например, с помощью 'WScript.exe' с' // D 'директива), VbsEdit или PrimalScript для проверки значения' strCode'. – omegastripes

+0

Я думаю, что это то, что я ищу, но сейчас я не могу попробовать. Я буду комментировать базу данных на ваш комментарий завтра, спасибо :) – Thorax

+0

hi @omegastripes, strCode содержит подмножества/функции определенного файла. Я обновлю свой вопрос на полный код/​​реализацию для ExecuteGlobal (strCode). – Thorax

ответ

0

top - это окно верхнего уровня в иерархии DOM.

Демо:

<html> 
<head> 
    <script type="text/vbscript"> 
    MsgBox TypeName(window.top) & " " & CStr(window.top Is top) & " " & CStr(window Is top) 
    </script> 
</head> 
<body> 
</body> 
</html> 
+0

спасибо за быстрый ответ: D, я попробую это сейчас. – Thorax

+0

Привет, я думаю, что это не то, что я ищу. Возможно, что-то вроде top.window достаточно близко, потому что я ищу вершину как объект не как элемент объекта. – Thorax

+0

@Thorax - почему вы думаете, что я включил 'CStr (window Is top)' в демо? –

Смежные вопросы