IEgripのドキュメント

IEgrip::IE

IEそのもの。 IEgrip::IE.new で生成する。生のIEと違って、画面表示される。

navigate(url)

urlで示されるアドレスに移動。移動後、IEの挙動が安定するまで待ってくれる。

visible=(flag)

IEのウインドウ表示を行うかどうか。バックグラウンドで動かしたいなら、falseを指定すると、画面表示されない。

version

IEのメジャーバージョンを数値で返す。

document()

IEが開いている文書を指すIEgrip::Documentオブジェクトを返す。

IEgrip::Node

Document, HTMLElement, TextNodeの親クラス。

nodeName

HTML要素ならタグ名、テキストノードなら#TEXTを返す。

nodeType

ノードの種別を1〜12で返す。

nodeTypeName

ノードの種別をラベルで返す。

IEgrip::Document

IEが表示している文書そのものを示すクラス。

head()

HTMLの<head>を指すHTMLElementを返す。

body()

HTMLの<body>を指すHTMLElementを返す。

all()

Document配下のすべてのHTMLElementのリストを内包するHTMLElementCollectionを返す。

frames(index=nil)

Document配下の<iframe>を内包するFramesオブジェクトを返す。 indexを指定すると、index番目のFrameオブジェクトを返す。index=0が最初のFrame。

getElementById(element_id)

文書内のHTML要素の中から、id属性がelement_idに一致する要素をHTMLElementで返す。 無ければnil。

createElement(tag_name)

新しいHTMLElementを生成して返す。要素のツリーに組み込むと、画面に表示される(らしい。まだ試してない)

createAttribute(attr_name)

新しいAttrオブジェクトを生成して返す。まだ使い方はわかってない。

IEgrip::HTMLElement

HTML要素を指すオブジェクト。 他のHTMLElementを探す機能も持つ。

目的のHTML要素が手に入ったら、あとは中身を取り出すメソッドを作用させれば情報も取り出しが自由自在。

tagname

HTML要素のタグ名(<a>とか<div>の名称)を返す。

text

その要素の持つ値を返す。

書き込みも可能なので、文字や数値の入力枠に書き込むことができる。

<select>の場合、選択肢の文字列をセットすると、その選択肢が選択された状態になる。

click

HTML要素をクリックしてくれる。

昔は<a>要素でもclick()メソッドを呼ぶだけで、リンク先に移動してくれたが、IE10くらいからそれではダメになった。

いろいろ試したところ、click(true)でクリック動作してくれることがわかった。引数はtrueでもなんでもいいみたい。変なの。

all

この要素の配下のすべてのHTMLElementのリストを内包するHTMLElementCollectionを返す。

export(filename)

この要素が指すファイルや画像などをファイルに保存する。

setAttributeNode(attribute)

属性を示すAttrを本Elementにセット。

getAttributeNode(attr_name)

attr_nameで特定されるAttrオブジェクトを取得。

removeAttribute(attr_name)

attr_nameで特定される属性を削除。

parentElement

自分の親のHTMLElementを返す。

getParentForm

自分が属する<form>を指すHTMLElementを返す。

childNodes

自分の直下のNodeを内包するNodeListを返す。

chileElements

自分の直下のElementを内包するHTMLElementCollectionを返す。

previousSibling

自分と同じレベルの前のHTMLElementを返す。前がなければnil.

nextSibling

自分と同じレベルの次のHTMLElementを返す。次がなければnil.

firstChild

自分の子のHTMLElement達の中で最初の子を返す。

lastChild

自分の子のHTMLElement達の中で最後の子を返す。

hasChildNodes

子Nodeがいるかどうかを返す。

hasChildElements

子のHTMLElementがいるかどうかを返す。

contains(node)

nodeで示すNodeが自分の配下にいるかどうかを調べてくれる。

isEqualNode(node)

nodeで示すNodeが自分と同じか返してくれる。

struct()

自分の配下のHTMLElementの構造をインデント付の文字列の形で返してくれる。

ID

HTML要素に付けられたid属性を返す。idだと、RubyのObject#idが先に反応するので、大文字でIDにするといい。

getElementsByName(name)
getElementByName(name)

getElementsByName()は自分の配下の要素の中から、name属性がnameに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByName()は自分の配下の要素の中から、name属性がnameに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByTagName(tag_name)
elements(tag_name)

自分の配下の要素の中から、タグ名がtag_nameに一致する要素の一覧をHTMLElementCollectionで返す。 無ければnil。

getElementsByTitle(target_str)
getElementByTitle(target_str)

getElementsByTitleの方は自分の配下の要素の中から、title属性がtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByTitleの方は自分の配下の要素の中から、title属性がtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByValue(target_str)
getElementByValue(target_str)

getElementsByValue()は自分の配下の要素の中から、value属性がtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByValue()は自分の配下の要素の中から、value属性がtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByText(target_str)
getElementByText(target_str)

getElementsByText()は自分の配下の要素の中から、innerTextがtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByText()は自分の配下の要素の中から、innerTextがtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

insertBefore(new_element, anchor_element)

new_elementを自分の子として追加。追加位置はanchor_elementの前。

appendChild(new_element)

new_elementを自分の子として追加。追加位置は子供の末端。

addElement(new_element)

自分の後ろにnew_elementを追加。IEgrip独自のメソッド。

removeChild(element)

自分の子要素からelementを削除。

replaceChild(newElement, oldElement)

自分の子要素からoldElementを削除して、newElementに置き換える。

IEgrip::NodeList

TextNodeやElementNodeのコレクション。

[index]

index番目のNodeオブジェクトかHTMLElementを返す。

length
size

コレクションに内包されているNodeとHTMLElementの数を返す。

each {|node| block}

コレクションのイテレータ。

IEgrip::HTMLElementCollection

HTMLElementのコレクション。

[index]

index番目のHTMLElementを返す。

length
size

コレクションに内包されているHTMLElementの数を返す。

each {|element| block}

コレクションのイテレータ。

getElementsByName(name)
getElementByName(name)

getElementsByName()はコレクションの中から、name属性がnameに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByName()はコレクションの中から、name属性がnameに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByTitle(target_str)
getElementByTitle(target_str)

getElementsByTitleの方はコレクションの中から、title属性がtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByTitleの方はコレクションの中から、title属性がtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByValue(target_str)
getElementByValue(target_str)

getElementsByValue()はコレクションの中から、value属性がtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByValue()はコレクションの中から、value属性がtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

getElementsByText(target_str)
getElementByText(target_str)

getElementsByText()はコレクションの中から、innerTextがtarget_strに一致する要素の一覧をHTMLElementCollectionで返す。 getElementByText()はコレクションの中から、innerTextがtarget_strに一致する要素の一覧から最初の要素をHTMLElementで返す。

無ければnil。

IEgrip::Frames

Frameのコレクション。

[index]

index番目のFrameオブジェクトを返す。

length
size

コレクションに内包されているFrameの数を返す。

each {|frame| block}

コレクションのイテレータ。

IEgrip::Frame

<iframe>を示す。

document

<iframe>が指す先の文書を示すDocumentオブジェクトを返す。

IEgrip::Attr

属性を示すAttrオブジェクトを示す。まだ試してない。

value

読み書き可能。属性値。

ownerElement()

属性の親のHTMLElementを返す。