Как найти и заполнить модал с помощью транспортира?

В ответ на:

Увы, JavaScript просто не способен извлечь свойства изображения, которые вам потребуются, чтобы сделать что-то вроде этого. Тем не менее, может быть спасение в виде HTML-элемента в сочетании с небольшим количеством серверных скриптов. ...

< ? (open php) 
$large_image = 'path/to/large_image';
$full_w = imagesx($large_image);
$full_h = imagesy($large_image);
(close php) ? >

Это можно сделать в Javascript, просто google:

var newimage = new Image();
newimage.src = document.getElementById('background').src;
var height = newimage.height;
var width  = newimage.width;

Это создает новое изображение из существующего и фиксирует этот путь в java сценарий исходных свойств высоты и ширины исходного изображения (а не один id'ed в качестве фона.

В ответ на:

Свойства ширины / высоты объекта изображения документа Однако, если вы можете их изменить, вы бы только хлюпали фреймами, а не обрезали фреймы так, как вы этого хотите. Вид манипуляции с изображениями, который вы хотите, не может быть выполнен с помощью javascript на стороне клиента. Я предлагаю разрезать изображения вверх на сервере или наложить div на изображение, чтобы скрыть части, которые вы не хотите отображать.

...

var newimage = new Image();
newimage.src = document.getElementById('background').src;
var height = newimage.height;
var width  = newimage.width;
newimage.style.height = '200px';
newimage.style.width = '200px';
newimage.height = '200px';
newimage.width = '200px';

и если хотите:

newimage.setAttribute('height','200px');

В определенных обстоятельствах требуется удвоить newimage.style.height и newimage.height, чтобы убедиться, что IE будет понимать вовремя, что изображение будет изменено (вы собираетесь отобразить вещь сразу после этого, и внутренний процесс IE ng слишком медленно для этого.)

Спасибо за вышеупомянутый скрипт, который я изменил и внедрил на http://morethanvoice.net/m1/reader13.php (меню правой кнопки мыши. .. mouseover zoom lent) корректно даже в IE, но, как вы заметили, обработка изображений mousemove слишком быстра для старого IE, отображающего позицию, но только после изображения. В любом случае любая хорошая идея приветствуется.

Спасибо всем за ваше внимание, надеюсь, что приведенные выше коды помогут кому-то ...

Claudio Klemp http: // morethanvoice.net/m1/reader13.php

0
задан Mike 18 January 2019 в 20:14
поделиться

2 ответа

Ваша ошибка в том, что ваши скобки испорчены. Вам нужно закрыть локатор перед функцией click.

Изменить element(by.id('login').click()) на element(by.id('login')).click()

0
ответ дан Gunderson 18 January 2019 в 20:14
поделиться

Вы находитесь в данный момент, потому что Protractor пытается взаимодействовать с полями ввода появляющегося модального диалога. Для решения этой проблемы вы можете использовать Ожидаемое условие из Protractor.

С ними вы можете подождать, пока поля ввода не станут взаимодействующими:

element(by.id('login').click()).then(function(){
    const EC = protractor.ExpectedConditions;
    // Waits max. 5 seconds for the input field to become clickable
    browser.wait(EC.elementToBeClickable(element(by.id('username')), 5000);
    element(by.id('username')).sendKeys('admin');
    ...
});
0
ответ дан Batajus 18 January 2019 в 20:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: