BitmapData.setPixels() doesn't work in HTML5?

My code:

package;

import flash.display.Sprite;
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.geom.Rectangle;
import flash.utils.ByteArray;
import openfl.Lib;

class Main extends Sprite 
{

    public function new() 
    {
        super();

        var myBD = new BitmapData(256, 256, false, 0xff0000);
        addChild(new Bitmap(myBD));
        var myBA = new ByteArray();
        
        for (i in 0...(128 * 128))
        {
            myBA.writeUnsignedInt(0xffccccff);
        }
        
        myBA.position = 0;
        myBD.setPixels(new Rectangle(0, 0, 128, 128), myBA);
    }
}

The flash target has no problem:

But for HTML5, I got this: