Текстовая область в IE7 исчезает на мыши

Следующее будет расширять ваш код для определенных категорий продуктов с помощью условной функции WordPress has_tem():

add_action( 'woocommerce_cart_calculate_fees', 'second_item_discount', 10, 1 );
function second_item_discount( $cart ) {

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
        return;

    $percentage = 20; // 20%
    $categories = array('cat1', 'cat2'); // Defined product categories term slugs
    $discount   = 0;

    // Loop through cart items
    foreach ( $cart->get_cart() as $cart_item ) {
        // When quantity is more than 1 and for defined product categories
        if( $cart_item['quantity'] > 1 && has_term( $categories, 'product_cat', $cart_item['product_id'] ) ){
            // 20% of the product price as a discount
            $discount += wc_get_price_excluding_tax( $cart_item['data'] ) * $percentage / 100;
        }
    }
    if( $discount > 0 )
        $cart->add_fee( __( '2nd item discount', 'woocommerce' ) , -$discount );
}

Код помещается в файл function.php вашей активной дочерней темы (или активной темы). Проверено и работает.

5
задан Cyclonecode 30 June 2013 в 22:07
поделиться

4 ответа

в дополнение к элементам блока z-индекс работает на все элементы, которые имеют то, что называет IE, hasLayout читают больше

6
ответ дан 18 December 2019 в 09:11
поделиться

Если я помню единственную работу правильного Z-индекса над элементами блока, которые абсолютно расположены. Так попытайтесь установить положение раскрывающегося поля к абсолюту и затем попробуйте z-индекс. Если Вам нужно всплывающее окно, чтобы быть в определенном положении, устанавливает переносящийся элемент для расположения родственника. Я встретился с этой проблемой прежде, и я полагаю, что решил ее просто способом, которым я описал.

2
ответ дан 18 December 2019 в 09:11
поделиться

Самый легкий способ инициировать hasLayout (упомянутый в другом сообщении), должен добавить zoom: 1.

При отладке части самого немого IE 6/7 отображают проблемы, я буду иногда просто выводить временный файл

* {
    zoom: 1;
}

к моему CSS и видят, изменяется ли что-нибудь. Если это делает я начинаю выборочно добавлять его к элементам, запускающимся с элемента, родителя/детей элемента, и т.д.

zoom только поддерживается IE, таким образом, довольно "безопасно" иметь в Вашем документе. Это также сохраняет Вас от необходимости сделать что-либо сумасшедшее как абсолютное расположение элементов и т.д.

9
ответ дан 18 December 2019 в 09:11
поделиться

I've had the exact same problem with both input fields and textareas in IE7, but only if I gave them a width.

I don't remember where I got it from, but I found this solution, it may not be very elegant, but it solved the issue. Just add:

filter:alpha(opacity=100)

to your css of style attribute of the troublesome fields.

1
ответ дан 18 December 2019 в 09:11
поделиться