2

すべての Web ページですべての io リクエストをリッスンしたいのですが、以下の構文を使用すると、yui インスタンスでのみ io をリッスンできます。

Y.on('io:success', myCallBack);

これを達成するためにカスタムメソッド/イベントなどを作成するにはどうすればよいですか?

私の質問は、実際には以下の URL と同じです。

http://yulibrary.com/forum/viewtopic.php?p=26009

私はしばらくグーグルで検索しましたが、これに対する実用的な答えが見つかりませんでした。

4

2 に答える 2

2

試す

(Y.io._map['io:0'] || new Y.IO()).publish({
    'io:success': { broadcast: 2 },
    'io:complete': { broadcast: 2 },
    etc.
});
于 2012-07-10T15:47:48.863 に答える
0
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>io.jsp</title>
<script src="/spring-test/scripts/yui_3.5.1/build/yui/yui-min.js"></script>
</head>
<body>
test

<script>

YUI().use("io-base", function(Y){

    function onSuccess(transactionid,response,arguments){
        alert('start!');
    }
    Y.Global.on('io:start',onSuccess);

});

Y1 = YUI().use("io-base", "node", function(Y1){

    Y1.publish('io:start',{broadcast : 2});
    Y1.io("http://www.yahoo.com.hk");   

});

</script>
</body>

最後に1つの例を取得しましたが、FF、Chromeでのみ機能しますが、IEでは失敗します。

改善があれば提案してください、ありがとう。

于 2012-07-11T11:57:39.923 に答える