Как объединить URIs

Или вы можете изменить положение определенного div, используя имя класса

$(document).scroll(function(e){
    var scrollTop = $(document).scrollTop();
    if(scrollTop > 0){
        //console.log(scrollTop);
        $('.header').css("position","fixed");
    } else {
         $('.header').css("position","relative");
    }
});
19
задан BCS 13 September 2011 в 16:12
поделиться

4 ответа

Что ж, вам придется каким-то образом сказать Ури , что последняя часть - это каталог, а не файл. Использование косой черты в конце кажется мне наиболее очевидным способом.

Имейте в виду, что для многих ури ваш ответ совершенно правильный. Например, если ваш веб-браузер выполняет рендеринг

http://foo.com/bar/index.html

и видит относительную ссылку «other.html», он переходит к

http://foo.com/bar/other.html

, а не

http://foo.com/bar/index.html/other.html

. Использование завершающей косой черты в «каталоге» Uris - довольно знакомый способ предлагая, чтобы относительный Uris просто добавлялся вместо замены.

16
ответ дан 30 November 2019 в 03:03
поделиться

Почему бы просто не унаследовать от Uri и не использовать его, т.е. сделать в конструкторе, что нужно сделать, чтобы это исправить? Рефакторинг является дешевым, если он является внутренним по отношению к сборке или находится в пределах досягаемости.

0
ответ дан 30 November 2019 в 03:03
поделиться

добавьте косую черту в конце вашего первого uri, URI будет игнорировать более одной косой черты (/)

var a = new Uri("file:///C:/Some/Dirs/");

EDIT:

var a = new Uri("file:///C:/Some/Dirs");
var b = new Uri("some.file",  UriKind.Relative);
var c = new Uri(Path.Combine(a.ToString(), b.ToString()));
MessageBox.Show(c.AbsoluteUri);
2
ответ дан 30 November 2019 в 03:03
поделиться

Вы можете попробовать этот метод расширения! Работает всегда! ;-)

 public static class StringExtension
    {
        public static string UriCombine(this string str, string param)
        {
            if (!str.EndsWith("/"))
            {
                str = str + "/";
            }
            var uri = new Uri(str);
            return new Uri(uri, param).AbsoluteUri;
        }
    }

Angelo, Alessandro

5
ответ дан 30 November 2019 в 03:03
поделиться
Другие вопросы по тегам:

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