次のコードでは、jQueryのlistViewセレクターをパラメーターとして関数「makeObject」に渡そうとしています。私が抱えている問題は、コードが関数「createList」のセレクターの.listviewメソッドを認識しないことです。
文字列を渡して、呼び出された関数内でセレクターを再構築するだけのソリューションが必要です。
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
function Object() {
this.selector;
this.createList;
}
function makeObject(selector) {
var result = new Object();
result.selector = selector;
result.createList = createList;
return result;
}
function createList() {
this.selector.append("<li>list item 1</li>");
this.selector.append("<li>list item 2</li>");
this.selector.append("<li>list item 3</li>");
this.selector.listview("refresh");
}
var selectorParam = $("#testList");
var testObject = makeObject(selectorParam);
testObject.createList();
</script>
</head>
<body>
<ul id="testList" data-role="listview"></ul>
</body>