parent
4b7774db29
commit
eef98c6adc
@ -0,0 +1,70 @@
|
||||
$("img#selector-background").bind('load', function () {
|
||||
// Image is ready
|
||||
$('.fetching-update-notice').html("Fetching element data..");
|
||||
|
||||
$.ajax({
|
||||
url: watch_visual_selector_data_url,
|
||||
context: document.body
|
||||
}).done(function (data) {
|
||||
$('.fetching-update-notice').html("Rendering..");
|
||||
reflow_selector(data);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function reflow_selector(selector_data) {
|
||||
$('#selector-canvas').attr('width', $("img#selector-background").width());
|
||||
$('#selector-canvas').attr('height', $("img#selector-background").height());
|
||||
|
||||
//.attr('height', $("img#selector-background").height());
|
||||
|
||||
// could trim it according to the lowest/furtheret item in the dataset
|
||||
stage = new createjs.Stage("selector-canvas");
|
||||
|
||||
// to get onMouseOver & onMouseOut events, we need to enable them on the
|
||||
// stage:
|
||||
stage.enableMouseOver();
|
||||
output = new createjs.Text("Test press, click, doubleclick, mouseover, and mouseout", "14px Arial");
|
||||
output.x = output.y = 10;
|
||||
stage.addChild(output);
|
||||
|
||||
var squares = [];
|
||||
for (var i = 0; i < selector_data.length; i++) {
|
||||
|
||||
squares[i] = new createjs.Shape();
|
||||
|
||||
squares[i].graphics.beginFill("rgba(215,0,0,0.2)").drawRect(
|
||||
selector_data[i]['left'],
|
||||
selector_data[i]['top'],
|
||||
selector_data[i]['width'],
|
||||
selector_data[i]['height']);
|
||||
|
||||
squares[i].name = selector_data[i]['xpath'];
|
||||
stage.addChild(squares[i]);
|
||||
|
||||
squares[i].on("click", handleMouseEvent);
|
||||
squares[i].on("dblclick", handleMouseEvent);
|
||||
squares[i].on("mouseover", handleMouseEvent);
|
||||
squares[i].on("mouseout", handleMouseEvent);
|
||||
squares.push(squares[i]);
|
||||
}
|
||||
|
||||
|
||||
stage.update();
|
||||
$('.fetching-update-notice').hide();
|
||||
}
|
||||
|
||||
function handleMouseEvent(evt) {
|
||||
output.text = "evt.target: " + evt.target + ", evt.type: " + evt.type;
|
||||
|
||||
if(evt.type == 'mouseover') {
|
||||
evt.target.graphics.beginFill("rgba(225,220,220,0.9)");
|
||||
}
|
||||
|
||||
if(evt.type == 'mouseout') {
|
||||
evt.target.graphics.beginFill("rgba(1,1,1,0.4)");
|
||||
}
|
||||
|
||||
// to save CPU, we're only updating when we need to, instead of on a tick:1
|
||||
stage.update();
|
||||
}
|
Loading…
Reference in new issue